我有一个 dockerized nginx 服务器,我可以在本地机器上构建和运行它,没有任何问题。所以现在我想在 gitlab 运行器的帮助下部署它。
这是我的简单 dockerfile:
FROM nginx
COPY web /usr/share/nginx/html
EXPOSE 80
因此,如果我在本地机器上构建并运行它,它就可以工作。但此时我有第一个问题:docker 在哪里运行 nginx 服务器?因为如果我查看 /usr/share 那里什么都没有。
现在,如果我将我的项目推送到 gitlab,请注册一个运行器并让它执行以下 gitlab-ci 文件:
image: docker:stable
variables:
DOCKER_DRIVER: overlay2
services:
- docker:dind
before_script:
- docker info
build:
script:
- docker build -t bd24_nginx .
- docker run -d -p 80:80 bd24_nginx
...工作做得很好。gitlab页面的控制台输出没有错误。这是输出:
Successfully built 9903dc370422
Successfully tagged bd24_nginx:latest
$ docker run -d -p 80:80 bd24_nginx
b1e24c7cf9af8a43b3c2418d1ca1b90a58e445eb6b0b0ac9cde61f99be8cff7b
Job succeeded
但是如果我现在访问我的服务器的 IP 地址,静态 html 测试页面不会出现。所以我怀疑路径有问题?或者有什么我完全想念的吗?提前致谢。