Docker化的gitlab使用主机docker到CI

我目前正在学习gitlab-ci,并进行部署。 我的gitlab实例在Docker容器中运行,我想使用主机的docker来构build和部署映像。

有这样的方法来做到这一点?

是。 如果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 。 如果主机上有相同的版本,则可以省略环境variables。 如果主机上有1.11 ,那么你需要它(如果你有其他的版本,你会得到一个错误信息,包含版本号)。

像这样构build图像

 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