如何在docker(DIND)中运行docker container?

时间:2017-08-29 00:15:58

标签: docker

我正在尝试使用Docker https://hub.docker.com/_/docker中的Docker在另一个容器中运行容器。

当我运行以下内容时:

ID var
1  NA
2  NA
3  NA
4  NA
...

我收到以下错误消息:

docker:无法在unix:///var/run/docker.sock上连接到Docker守护程序。 docker守护程序是否正在运行? 请参阅'docker run --help'。

我必须遗漏一些东西,如何在docker中运行docker?

1 个答案:

答案 0 :(得分:2)

我认为你不能用一个班轮(别人可能会纠正我)。但是,如hub.docker.com/_/docker/所述,您可以将docker-in-docker容器作为后台守护程序(-d)启动,然后启动其他容器。

要启动父容器,请运行

docker run -d --name some-docker --privileged docker:stable-dind

名称some-docker是任意的。稍后它将用于识别此容器。要在里面启动容器,请运行

docker run  --link some-docker:docker docker run hello-world

--link选项公开父容器的网络端口并设置环境变量,以便内部容器使用来自dind映像的docker。