繁体   English   中英

在 arm32v7/ubuntu:20.04 docker 中运行 apt update 时 GPG 无效签名错误

[英]GPG invalid signature error while running apt update inside arm32v7/ubuntu:20.04 docker

我正在尝试从 ubuntu16 升级到 ubuntu20,为此我需要将所有arm32v7/ubuntu:16.04图像arm32v7/ubuntu:16.04更改为arm32v7/ubuntu:20.04 [之后更新所需的库],但是在执行此任务时,我发现有ubuntu:20.04 的 arm32v7 基本映像的一些问题 - 当我运行apt-get update它失败并显示以下错误消息 -

Err:1 http://ports.ubuntu.com/ubuntu-ports focal InRelease
  At least one invalid signature was encountered.
Get:4 http://ports.ubuntu.com/ubuntu-ports focal-security InRelease [107 kB]
Err:2 http://ports.ubuntu.com/ubuntu-ports focal-updates InRelease
  At least one invalid signature was encountered.
Err:3 http://ports.ubuntu.com/ubuntu-ports focal-backports InRelease
  At least one invalid signature was encountered.
Err:4 http://ports.ubuntu.com/ubuntu-ports focal-security InRelease
  At least one invalid signature was encountered.
Reading package lists... Done
W: GPG error: http://ports.ubuntu.com/ubuntu-ports focal InRelease: At least one invalid signature was encountered.
E: The repository 'http://ports.ubuntu.com/ubuntu-ports focal InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.
N: See apt-secure(8) manpage for repository creation and user configuration details.
W: GPG error: http://ports.ubuntu.com/ubuntu-ports focal-updates InRelease: At least one invalid signature was encountered.
E: The repository 'http://ports.ubuntu.com/ubuntu-ports focal-updates InRelease' is not signed.
N: Updating from such a repository can't be done securely, and is therefore disabled by default.

我尝试了这里提到的解决方案 [https://askubuntu.com/a/1264921/872700] 但这也不起作用,因为我们在 Dockerfile 中使用图像,并且不允许在--security-opt docker build命令中传递--security-opt .

作为一种解决方法,我使用--security-opt选项docker run --security-opt docker run并使用--security-opt docker commit创建另一个图像 - 然后在新图像中运行apt-get update但这也不起作用。

仅供参考,机器上有以下Docker version 19.03.13, build 4484c46版本 - Docker version 19.03.13, build 4484c46

我最近在 Docker Desktop for Mac 上遇到了这个问题,在 Ubuntu 20.04 x86_64 容器中运行apt-get update 事实证明,在 macOS 上托管 Docker 映像的 VM 已用完磁盘空间。 这以某种方式表现为apt报告包索引文件上的无效签名。 修剪未使用的图像以释放空间为我解决了这个问题:

docker image prune -a

正如sema 评论中提到的,如果问题是由磁盘空间不足引起的,另一种解决方法是增加运行 docker 的虚拟机使用的虚拟磁盘的大小。 在 Docker Desktop for Mac 中,这可以通过Preferences > Resources > Disk image size来完成。

为了解决这个问题,我不得不在我的主机 pi 机器上更新库libseccomp2 ,因为我找不到任何其他解决方案来应用基本映像。

这里下载 deb 包并使用 - 在主机上应用 -

sudo dpkg -i libseccomp2_2.4.4-1+b1_armhf.deb

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM