Docker 在 Docker(DND) 没有启动
Docker in Docker(DND) is not starting
我有一个 simple Ubuntu 16.10 container 安装了 docker.io
。
docker 进程启动后终止,日志中有此信息。有任何故障排除建议吗?
$ docker run -it --name dcos-ubuntu-python5 python-docker /bin/bash
root@5ff6bb6b6dc7:/# docker run hello-world
docker: Cannot connect to the Docker daemon. Is the docker daemon running on this host?.
See 'docker run --help'.
root@5ff6bb6b6dc7:/# service docker start
* Starting Docker: docker [ OK ]
root@5ff6bb6b6dc7:/# service docker status
* Docker is not running
root@5ff6bb6b6dc7:/# tail -f /var/log/docker.log
time="2017-12-21T17:09:45.464736873Z" level=info msg="libcontainerd: new containerd process, pid: 50"
time="2017-12-21T17:09:46.472578239Z" level=fatal msg="Error starting daemon: error initializing graphdriver: operation not permitted"
你 运行宁 docker as sudo if not 运行 as sudo or
否则将用户组添加到 docker
docker组。为此 运行 以下命令:
sudo usermod -aG docker $USER
为什么要 运行 docker 在 docker 容器内?
Docker-in-Docker开发是为了帮助docker开发。它需要 --privileged
标志到 运行 docker 容器。(请阅读 jpetazzo 的博客 here。)
如果你真的想在docker容器中执行docker,你还有其他选择。
绑定挂载docker.sock。有些人称之为 DooD(Docker-outside-of-Docker)
docker 运行 -v /var/run/docker.sock:/var/run/docker.sock ...
安装docker(客户端)并指定DOCKER_HOST
访问远程docker守护进程。注意socket protection with certificates.
答案很简单。
docker run -it --privileged --name dcos-ubuntu-python5 python-docker /bin/bash
(@SunghoMoon 的回复中也部分提到了这一点。因此归功于他)。
我有一个 simple Ubuntu 16.10 container 安装了 docker.io
。
docker 进程启动后终止,日志中有此信息。有任何故障排除建议吗?
$ docker run -it --name dcos-ubuntu-python5 python-docker /bin/bash
root@5ff6bb6b6dc7:/# docker run hello-world
docker: Cannot connect to the Docker daemon. Is the docker daemon running on this host?.
See 'docker run --help'.
root@5ff6bb6b6dc7:/# service docker start
* Starting Docker: docker [ OK ]
root@5ff6bb6b6dc7:/# service docker status
* Docker is not running
root@5ff6bb6b6dc7:/# tail -f /var/log/docker.log
time="2017-12-21T17:09:45.464736873Z" level=info msg="libcontainerd: new containerd process, pid: 50"
time="2017-12-21T17:09:46.472578239Z" level=fatal msg="Error starting daemon: error initializing graphdriver: operation not permitted"
你 运行宁 docker as sudo if not 运行 as sudo or
否则将用户组添加到 docker
docker组。为此 运行 以下命令:
sudo usermod -aG docker $USER
为什么要 运行 docker 在 docker 容器内?
Docker-in-Docker开发是为了帮助docker开发。它需要 --privileged
标志到 运行 docker 容器。(请阅读 jpetazzo 的博客 here。)
如果你真的想在docker容器中执行docker,你还有其他选择。
绑定挂载docker.sock。有些人称之为
DooD(Docker-outside-of-Docker)
docker 运行 -v /var/run/docker.sock:/var/run/docker.sock ...
安装docker(客户端)并指定
DOCKER_HOST
访问远程docker守护进程。注意socket protection with certificates.
答案很简单。
docker run -it --privileged --name dcos-ubuntu-python5 python-docker /bin/bash
(@SunghoMoon 的回复中也部分提到了这一点。因此归功于他)。