0
我目前正在学习gitlab-ci和部署。 我的gitlab实例在Docker容器中运行,我想使用主机的docker来构建和部署映像。Docker化gitlab使用主机码头到CI
有没有这样的方式来做到这一点?
我目前正在学习gitlab-ci和部署。 我的gitlab实例在Docker容器中运行,我想使用主机的docker来构建和部署映像。Docker化gitlab使用主机码头到CI
有没有这样的方式来做到这一点?
是的。如果docker没有安装在镜像中(当前的gitlab/gitlab-ce没有),您需要使用安装扩展镜像。例如。
FROM gitlab/gitlab-ce:8.14.4-ce.0
ENV DOCKER_API_VERSION 1.23
RUN apt-get update && apt-get install -y docker.io
ENV DOCKER_API_VERSION 1.23
用于确保安装之间的API兼容性。在撰写本文时,您将收到apt-get install
的版本1.12.1
。如果主机上的版本相同,则可以省略环境变量。如果你在主机上有1.11
,那么你需要它(如果你有其他版本的话,你会得到一个错误信息,包含版本号)。
建立这样
docker build -t myrepo/myorg/mygitlab:8.14.4-ce.0 .
的图像,然后像运行这个
docker run -d --name gitlab -v /var/run/docker.sock:/var/run/docker.sock myrepo/myorg/mygitlab:8.14.4-ce.0
:您现在可以使用泊坞窗从容器:
docker exec -it gitlab bash
$~ docker ps
我试了一下,但它不起作用。 我应该在容器中安装码头吗? –
对不起,我没有试用gitlab镜像,只是假设它已经安装了docker。答案已更新。 – gogstad
是的,我更新了我的Dockerfile以添加docker安装并且它可以正常工作。谢谢 ! –