我有Docker-CE 18.05.0-ce(也在18.03.0上试过) 安装后(使用官方文档进行安装和安装后)尝试运行:
docker run hello-world
由于权限,它会下载但无法解压缩: 命令输出:
docker: failed to register layer: ApplyLayer exit status 1 stdout: stderr: permission denied
调试模式下的输出:
DEBU[2018-06-15T12:50:48] Downloaded 9bb5a5d4561a to tempfile /var/lib/docker/tmp/GetImageBlob852000141
DEBU[2018-06-15T12:50:48] Start untar layer
DEBU[2018-06-15T12:50:48] Cleaning up layer 5e34eb70d39d9ddbe0512db63ef2bf4811924cffbc5c6ce0a34e9c3b37af5363: ApplyLayer exit status 1 stdout: stderr: permission denied
我尝试使用sudo并更改/ var / lib / docker中文件夹的权限(例如777)
有谁知道如何修复它?
来自docker info的一些信息:
Storage Driver: vfs
Cgroup Driver: cgroupfs
Runtimes: runc
Kernel Version: 4.13.13-5-pve
Operating System: CentOS Linux 7 (Core)
答案 0 :(得分:1)
原因是我将CentOS用作具有 LXC 虚拟化的虚拟机。 有解决方案如何在LXC中运行Docker,但没有尝试过。 我已经通过 KVM 虚拟化将VM更改为新的虚拟机,现在Docker可以使用了。
答案 1 :(得分:0)
这可能与磁盘使用有关。你在磁盘上有空间吗?
$ df -h
或inode用尽:
$ df -i
如果您有空间和免费的inode,请检查您的版本:
# rpm -qa | grep -i docker
docker-common-1.13.1-53.git774336d.el7.centos.x86_64
docker-1.13.1-53.git774336d.el7.centos.x86_64
docker-client-1.13.1-53.git774336d.el7.centos.x86_64
# docker --version
Docker version 1.13.1, build 774336d/1.13.1