在Debian安装泊坞窗 - “叠加”不支持通过overlayfs

问题描述:

我创建了一个码头工人形象为我构建流水线,我试图运行docker build -t someTag .在Debian安装泊坞窗 - “叠加”不支持通过overlayfs

不过,我得到这个错误。

DEBU[0000] Listener created for HTTP on unix (/var/run/docker.sock) 
INFO[0000] libcontainerd: new containerd process, pid: 1026 
DEBU[0000] Permission denied writing "-500" to /proc/1026/oom_score_adj 
DEBU[0000] containerd: grpc api on /var/run/docker/libcontainerd/docker-containerd.sock 
DEBU[0000] containerd: read past events     count=0 
DEBU[0000] containerd: supervisor running    cpus=2 memory=976 runtime=docker-runc runtimeArgs=[] stateDir="/var/run/docker/libcontainerd/containerd" 
DEBU[0000] libcontainerd: containerd health check returned error: rpc error: code = 14 desc = grpc: the connection is unavailable 
DEBU[0001] Permission denied writing "-500" to /proc/self/oom_score_adj 
DEBU[0001] Using default logging driver json-file 
DEBU[0001] Golang's threads limit set to 6840 
DEBU[0001] [zfs] zfs command is not available: exec: "zfs": executable file not found in $PATH 
ERRO[0001] 'overlay' is not supported over overlayfs 
DEBU[0001] Using graph driver vfs 
DEBU[0001] Max Concurrent Downloads: 3 
DEBU[0001] Max Concurrent Uploads: 5 
INFO[0001] Graph migration to content-addressability took 0.00 seconds 
INFO[0001] Loading containers: start. 
DEBU[0001] Option Experimental: false 
DEBU[0001] Option DefaultDriver: bridge 
DEBU[0001] Option DefaultNetwork: bridge 
WARN[0001] Running modprobe bridge br_netfilter failed with message: , error: exec: "modprobe": executable file not found in $PATH 
WARN[0001] Running modprobe nf_nat failed with message: ``, error: exec: "modprobe": executable file not found in $PATH 
WARN[0001] Running modprobe xt_conntrack failed with message: ``, error: exec: "modprobe": executable file not found in $PATH 
DEBU[0001] Fail to initialize firewalld: Failed to connect to D-Bus system bus: dial unix /var/run/dbus/system_bus_socket: connect: no such file or directory, using raw iptables instead 
DEBU[0001] /usr/sbin/iptables, [-t nat -D PREROUTING -m addrtype --dst-type LOCAL -j DOCKER] 
DEBU[0001] /usr/sbin/iptables, [-t nat -D OUTPUT -m addrtype --dst-type LOCAL ! --dst 127.0.0.0/8 -j DOCKER] 
DEBU[0001] /usr/sbin/iptables, [-t nat -D OUTPUT -m addrtype --dst-type LOCAL -j DOCKER] 
DEBU[0001] /usr/sbin/iptables, [-t nat -D PREROUTING] 
DEBU[0001] /usr/sbin/iptables, [-t nat -D OUTPUT] 
DEBU[0001] /usr/sbin/iptables, [-t nat -F DOCKER] 
DEBU[0001] /usr/sbin/iptables, [-t nat -X DOCKER] 
DEBU[0001] /usr/sbin/iptables, [-t filter -F DOCKER] 
DEBU[0001] /usr/sbin/iptables, [-t filter -X DOCKER] 
DEBU[0001] /usr/sbin/iptables, [-t filter -F DOCKER-ISOLATION] 
DEBU[0001] /usr/sbin/iptables, [-t filter -X DOCKER-ISOLATION] 
DEBU[0001] /usr/sbin/iptables, [-t nat -n -L DOCKER] 
DEBU[0001] /usr/sbin/iptables, [-t nat -N DOCKER] 
DEBU[0001] start clean shutdown of all containers with a 15 seconds timeout... 
DEBU[0001] Cleaning up old mountid : start. 
DEBU[0001] Cleaning up old mountid : done. 

这是我的Dockerfile安装docker的信息。我发现这些步骤here

FROM debian:latest 

ENV DEBIAN_FRONTEND noninteractive 
ENV JENKINS_HOME /var/jenkins_home 

USER root 

WORKDIR $JENKINS_HOME 

RUN apt-get update 
RUN apt-get install \ 
    apt-transport-https \ 
    ca-certificates \ 
    curl \ 
    gnupg2 \ 
    software-properties-common -y 
RUN curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add - 
RUN apt-get install -y iptables 
RUN wget https://download.docker.com/linux/debian/dists/jessie/pool/stable/amd64/docker-ce_17.06.0~ce-0~debian_amd64.deb 
RUN dpkg -i docker-ce_17.06.0~ce-0~debian_amd64.deb 

我曾尝试:

我已经尝试开始dockerd。 从我最好的猜测,它看起来像我需要dockerd开始。

[email protected]:/var/jenkins_home# ps -ef | grep docker 
root   6  1 0 14:47 ?  00:00:00 grep docker 

我特地到更新

我试图更新我的iptables

[email protected]:/var/jenkins_home# apt-get install -y iptables 
Reading package lists... Done 
Building dependency tree 
Reading state information... Done 
iptables is already the newest version (1.6.0+snapshot20161117-6). 
0 upgraded, 0 newly installed, 0 to remove and 1 not upgraded. 

我已验证我是root和目录由root拥有。

[email protected]:/var/jenkins_home# whoami 
root 

我试图研究在哪里发表。请告诉我这是否需要移到其他地方。如果这不归类为“编程”,我会善意提出。

+0

检查此https://docs.docker.com/engine/userguide/storagedriver/overlayfs-driver/#configure-docker-with-the-overlay-or-overlay2-storage-driver – Edwin

+0

检查出来。 –

这听起来像你正在试图在Docker(DinD)中做Docker。它需要一些黑客并更改存储驱动程序(不能在覆盖层上覆盖)。有关更多信息,请参阅Dockerfile和入门点脚本https://github.com/docker-library/docker/tree/master/17.06/dind。它具有有关dind脚本获取的信息以及运行dockerd所需的入口点更改。

但是,在Docker Hub上有官方dind标记的图像,您可能比较擅长建造。见https://hub.docker.com/_/docker/。如果您需要定制,您可以使用图像docker:17.05.0-dind或将其映像关闭。