在我的Jenkins管道中,我正试图使用Docker映像maven:3.5.4-jdk-10-slim
作为我的Jenkins代理来运行构建。在里面,我运行命令apt-get update
。然而,当我这样做时,我会得到以下错误:
Get:1 http://deb.debian.org/debian sid InRelease [165 kB]
Err:1 http://deb.debian.org/debian sid InRelease
The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 648ACFD622F3D138 NO_PUBKEY 0E98404D386FA1D9
我在网上搜索了这个错误的帮助,有人建议我在更新命令之前添加以下2个命令,这样我就可以添加公钥进行验证:
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 648ACFD622F3D138
apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 0E98404D386FA1D9
然而,现在我在运行这些命令时遇到了一个不同的错误:
E: gnupg, gnupg2 and gnupg1 do not seem to be installed, but one of them is required for this operation
我还搜索了有关该错误的帮助,并建议我在2个新命令之前运行该命令:apt-get update && apt-get install -y gnupg
但是我不能运行apt-get update
。我该怎么解决这个问题?
我遇到了同样的问题。对我来说,以下内容解决了这个问题。
我意识到,我在CI中使用了一个非常旧的docker:18-dind
版本来构建图像。这个18-dind
更像是一个木偶,构建和推送图像。它能够构建图像,除了基于Ubuntu22的图像,例如eclipse-temurin
。
我将Docker构建的木偶从18-dind
更新为20-dind
,它解决了这个问题。