在 Docker 容器内运行 Docker:无法连接到 Docker 守护进程

2023-11-26

我创建了一个 Dockerfile 来在 Docker 中运行 Docker:

FROM ubuntu:16.04
RUN apt-get update && \
    apt-get install -y \
    apt-transport-https \
    ca-certificates \
    curl \
    software-properties-common && \
    curl -fsSL https://download.docker.com/linux/ubuntu/gpg | apt-key add - &&\
    apt-key fingerprint 0EBFCD88

RUN add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" && \
   apt-get update && \
   apt-get install -y docker-ce && \
   systemctl enable docker

在我启动容器并运行之后docker ps, I got:

Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?"

我执行了命令dockerd在我的容器内,结果如下:

Error starting daemon: Error initializing network controller: error obtaining controller instance: 
failed to create NAT chain DOCKER: iptables failed: iptables -t nat -N DOCKER: iptables v1.6.0: can't initialize iptables table nat': Permission denied (you must be root)
Perhaps iptables or your kernel needs to be upgraded.
 (exit status 3)

我收到的建议是使用 docker run 中的 -v 参数来映射容器之间的 docker 套接字,如下所示:

-v /var/run/docker.sock:/var/run/docker.sock
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Docker 容器内运行 Docker:无法连接到 Docker 守护进程 的相关文章

随机推荐