Kat*_*oak 8 centos docker centos7
我已经按照以下说明从存储库安装了docker-ce:
https://docs.docker.com/install/linux/docker-ce/centos/
我收到尝试启动docker的错误消息:
docker.service的作业失败,因为控制进程退出并显示错误代码。有关详细信息,请参见“ systemctl status docker.service”和“ journalctl -xe”。
journalctl具有以下内容:
...
dockerd[3647]: time="2018-02-05T14:47:05-08:00" level=info msg="containerd successfully booted in 0.002946s" module=containerd
dockerd[3647]: time="2018-02-05T14:47:05.456552594-08:00" level=error msg="There are no more loopback devices available."
dockerd[3647]: time="2018-02-05T14:47:05.456585240-08:00" level=error msg="[graphdriver] prior storage driver devicemapper failed: loopback attach failed"
dockerd[3647]: Error starting daemon: error initializing graphdriver: loopback attach failed
systemd[1]: docker.service: main process exited, code=exited, status=1/FAILURE
systemd[1]: Failed to start Docker Application Container Engine.
Run Code Online (Sandbox Code Playgroud)
我看过关于使用环回设备以外的东西的文章,但据我所知,这些文章表明需要进行优化-并不意味着初次启动会失败。
CentOS Linux版本7.4.1708(核心)
我在同一 Debian XEN 4.8 主机上的 Debian 9 VM 中遇到同样的问题,在 Debian 8 VM 中也遇到同样的问题。
环回似乎不存在:
# losetup -f
losetup: cannot find an unused loop device: No such device
Run Code Online (Sandbox Code Playgroud)
您可以使用以下命令创建那些
#!/bin/bash
ensure_loop(){
num="$1"
dev="/dev/loop$num"
if test -b "$dev"; then
echo "$dev is a usable loop device."
return 0
fi
echo "Attempting to create $dev for docker ..."
if ! mknod -m660 $dev b 7 $num; then
echo "Failed to create $dev!" 1>&2
return 3
fi
return 0
}
ensure_loop 0
ensure_loop 0
Run Code Online (Sandbox Code Playgroud)
但这只是找到正确解决方案的提示,它并没有完全解决它,现在既然/dev/loop0存在,我就有错误:
Error opening loopback device: open /dev/loop0: no such device or address
[graphdriver] prior storage driver devicemapper failed: loopback attach failed
Run Code Online (Sandbox Code Playgroud)
我按照最新文档apt-get install docker-ce docker-ce-cli containerd.io中的描述安装,现在使用最新版本:
$ docker --version
Docker version 19.03.0, build aeac9490dc
Run Code Online (Sandbox Code Playgroud)
还是同样的问题:
failed to start daemon: error initializing graphdriver: loopback attach failed
Run Code Online (Sandbox Code Playgroud)
这是完整的日志:
level=info msg="Starting up"
level=warning msg="failed to rename /var/lib/docker/tmp for background deletion: rename /var/lib/docker/tmp
/var/lib/docker/tmp-old: file exists. Deleting synchronously"
level=info msg="parsed scheme: \"unix\"" module=grpc
level=info msg="scheme \"unix\" not registered, fallback to default scheme" module=grpc
level=info msg="ccResolverWrapper: sending update to cc: {[{unix:///run/containerd/containerd.sock 0 <nil>}
] }" module=grpc
level=info msg="ClientConn switching balancer to \"pick_first\"" module=grpc
level=info msg="pickfirstBalancer: HandleSubConnStateChange: 0xc0005e8660, CONNECTING" module=grpc
level=info msg="pickfirstBalancer: HandleSubConnStateChange: 0xc0005e8660, READY" module=grpc
level=info msg="parsed scheme: \"unix\"" module=grpc
level=info msg="scheme \"unix\" not registered, fallback to default scheme" module=grpc
level=info msg="ccResolverWrapper: sending update to cc: {[{unix:///run/containerd/containerd.sock 0 <nil>}
] }" module=grpc
level=info msg="ClientConn switching balancer to \"pick_first\"" module=grpc
level=info msg="pickfirstBalancer: HandleSubConnStateChange: 0xc0007f5b10, CONNECTING" module=grpc
level=info msg="pickfirstBalancer: HandleSubConnStateChange: 0xc0007f5b10, READY" module=grpc
level=error msg="There are no more loopback devices available."
level=error msg="[graphdriver] prior storage driver devicemapper failed: loopback attach failed"
failed to start daemon: error initializing graphdriver: loopback attach failed
Run Code Online (Sandbox Code Playgroud)
最后我发现,虚拟机中缺少 pygrub,这似乎是某个版本以来的新依赖项。
这个答案是一条死胡同,我添加了另一个答案,但我将其留在这里供其他有不同问题的用户获取一些提示。
| 归档时间: |
|
| 查看次数: |
1659 次 |
| 最近记录: |