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安裝並且它可以正常工作。謝謝 ! –