我在许多与网络几乎无关的docker应用程序中看到了这一点,但我听不懂
答案 0 :(得分:0)
知道了。
https://jpetazzo.github.io/2015/09/03/do-not-use-docker-in-docker-for-ci/
让我们退后一步。您真的想要Docker-in-Docker吗?要么 您是否只是想能够运行Docker(特别是:构建,运行, 有时会从CI系统中推送容器和图片),而与此同时 CI系统本身在容器中?
我敢打赌,大多数人都希望后者。你只想要一个 解决方案,以便您的CI系统(如Jenkins)可以启动容器。
最简单的方法是将Docker套接字公开给您的CI 容器,方法是使用-v标志将其绑定安装。
简单地说,当您启动CI容器(Jenkins或其他)时, 与其与Docker-in-Docker一起入侵,不如将其启动 与:
docker run -v /var/run/docker.sock:/var/run/docker.sock
现在 容器将有权访问Docker套接字,因此将 能够启动容器。除了不是开始“孩子” 容器,它将开始“兄弟”容器。