本机 docker 摘要的文件系统层验证失败

问题描述 投票:0回答:1

我在 Ubuntu 22.04(CLI,而不是 Docker-Desktop)上运行 docker,并且不断收到层验证错误。请参阅下面的示例:

mjozwikowski:~$ docker -D pull postgres:latest
latest: Pulling from library/postgres
648e0aadf75a: Downloading [==========================>                        ]  15.44MB/29.12MB
f715c8c55756: Download complete 
b11a1dc32c8c: Downloading  2.693MB
f29e8ba9d17c: Verifying Checksum 
78af88a8afb0: Waiting 
b74279c188d9: Waiting 
6e3e5bf64fd2: Waiting 
b62a2c2d2ce5: Waiting 
eba91ca3c7a3: Waiting 
d4a24cdf2433: Waiting 
b20f8a8dfd5c: Waiting 
e0731dd084c3: Waiting 
0361da6a228e: Waiting 
filesystem layer verification failed for digest sha256:f29e8ba9d17cfa147141648b72ff8ab49a86234dfe1194f6220690939f1daa3c

mjozwikowski:~$ docker -D pull postgres:latest
latest: Pulling from library/postgres
648e0aadf75a: Pull complete 
f715c8c55756: Pull complete 
b11a1dc32c8c: Pull complete 
f29e8ba9d17c: Pull complete 
78af88a8afb0: Pull complete 
b74279c188d9: Pull complete 
6e3e5bf64fd2: Pull complete 
b62a2c2d2ce5: Pull complete 
eba91ca3c7a3: Verifying Checksum 
d4a24cdf2433: Download complete 
b20f8a8dfd5c: Download complete 
e0731dd084c3: Download complete 
0361da6a228e: Download complete 
filesystem layer verification failed for digest sha256:eba91ca3c7a37844775569d1771c8acfab80b32d9c24f4a0b5b998d91911d747

我已经多次测试过这个命令。此问题发生在不同的层上(尽管有些层往往会出现更多次),并且偶尔(例如二十分之一)一切正常。但在其他图像上(即

mcr.microsoft.com/mssql/server:2019-CU18-ubuntu-20.04
我无法成功完成拉动。

现在是全新安装。我已经完全删除了 docker 及其配置并重新安装了所有内容。

/var/lib/docker
已被删除,
/etc/docker/daemon.json
~/.docker/config.json
也被删除。 我不使用代理,互联网连接稳定,而且这不是虚拟机 - 它是本机 Ubuntu 安装。我已经尝试过 docker-desktop ,一切都很好,所以这不是存储库问题,也不是连接问题。

启动服务不报错:

sie 05 14:02:03 systemd[1]: Starting Docker Application Container Engine...
░░ Subject: A start job for unit docker.service has begun execution
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░ 
░░ A start job for unit docker.service has begun execution.
░░ 
░░ The job identifier is 3852.
sie 05 14:02:03 dockerd[8422]: time="2023-08-05T14:02:03.041443800+02:00" level=info msg="Starting up"
sie 05 14:02:03 dockerd[8422]: time="2023-08-05T14:02:03.042248549+02:00" level=info msg="detected 127.0.0.53 nameserver, assuming systemd-resolved, so using resolv.conf: /run/systemd/resolve/resolv.conf"
sie 05 14:02:03 dockerd[8422]: time="2023-08-05T14:02:03.055564872+02:00" level=info msg="Loading containers: start."
sie 05 14:02:03 dockerd[8422]: time="2023-08-05T14:02:03.383176470+02:00" level=info msg="Default bridge (docker0) is assigned with an IP address 192.168.128.0/24. Daemon option --bip can be used to set a preferred IP address"
sie 05 14:02:03 dockerd[8422]: time="2023-08-05T14:02:03.461435658+02:00" level=info msg="Loading containers: done."
sie 05 14:02:03 dockerd[8422]: time="2023-08-05T14:02:03.474691599+02:00" level=info msg="Docker daemon" commit=a61e2b4 graphdriver=overlay2 version=24.0.5
sie 05 14:02:03 dockerd[8422]: time="2023-08-05T14:02:03.474754307+02:00" level=info msg="Daemon has completed initialization"
sie 05 14:02:03 dockerd[8422]: time="2023-08-05T14:02:03.491109520+02:00" level=info msg="API listen on /run/docker.sock"
sie 05 14:02:03 systemd[1]: Started Docker Application Container Engine.
░░ Subject: A start job for unit docker.service has finished successfully
░░ Defined-By: systemd
░░ Support: http://www.ubuntu.com/support
░░ 
░░ A start job for unit docker.service has finished successfully.
░░ 
░░ The job identifier is 3852.

我将不胜感激所有的帮助。我已经没有主意了。

docker docker-image docker-engine
1个回答
0
投票

这似乎是一个已知的随机错误。 GitHub 上有一些关于此问题的开放问题,例如 https://github.com/GoogleContainerTools/kaniko/issues/1962

两种可能的解决方法,不能解决错误,而只能减轻错误,似乎是:

  • 删除所有图像,例如删除
    /var/lib/docker
    文件夹,然后重试(但你说你已经这样做了)
  • 通过设置
    --cache=true
    标志来禁用缓存
© www.soinside.com 2019 - 2024. All rights reserved.