ERROR: http://dl-4.alpinelinux.org/alpine/edge/testing:未经证实的签名

回答 3 浏览 2920 2022-08-16

我是个新手,但我继承了一个项目,其中运行时的构建是用dockerfile和这样的命令来创建的。

# Build runtime image

FROM microsoft/dotnet:2.2-aspnetcore-runtime-alpine

RUN echo "http://dl-4.alpinelinux.org/alpine/edge/testing" >> /etc/apk/repositories;

RUN apk update && apk add libgdiplus

RUN apk add --no-cache icu-libs

gitlab 管道显示了这一点:

Step 15/20 : RUN apk update && apk add libgdiplus

96 ---> Running in 95f8ebccb602

97fetch http://dl-cdn.alpinelinux.org/alpine/v3.10/main/x86_64/APKINDEX.tar.gz

98fetch http://dl-cdn.alpinelinux.org/alpine/v3.10/community/x86_64/APKINDEX.tar.gz

99fetch http://dl-4.alpinelinux.org/alpine/edge/testing/x86_64/APKINDEX.tar.gz

100ERROR: http://dl-4.alpinelinux.org/alpine/edge/testing: UNTRUSTED signature

101WARNING: Ignoring APKINDEX.24c95890.tar.gz: No such file or directory

102v3.10.9-43-g3feb769ea3 [http://dl-cdn.alpinelinux.org/alpine/v3.10/main]

103v3.10.6-10-ged79a86de3 [http://dl-cdn.alpinelinux.org/alpine/v3.10/community]

1041 errors; 10355 distinct packages available

105Service 'api' failed to build: The command '/bin/sh -c apk update && apk add libgdiplus' returned a non-zero code: 1

我知道密钥已经轮换,我必须以某种方式升级 alpine,但是添加RUN upgrade,或RUN apk add -X https://dl-cdn.alpinelinux.org/alpine/v3.16/main -u alpine-keys并没有改变任何东西。谁能告诉我,我需要做什么?

Lipsky 提问于2022-08-16
3 个回答
#1楼 已采纳
得票数 7

是的,我们遇到了这个问题,这是因为alpine linux的边缘签名密钥轮换了(链接,根据这个官方公告)。你必须在Dockerfile里面执行这个命令。

apk add -X https://dl-cdn.alpinelinux.org/alpine/v3.16/main -u alpine-keys

另一种方法是升级基本镜像,在你的例子中是microsoft/dotnet:2.2-aspnetcore-runtime-alpine,升级到一个较新的版本。

Pavol Krajkovič 提问于2022-08-16
当我添加apk add -X https://dl-cdn.alpinelinux.org/alpine/v3.16/main -u alpine-keys命令时,我只是得到另一个错误,这次是这样的。ERROR: https://dl-cdn.alpinelinux.org/alpine/v3.16/main: UNTRUSTED signatureLipsky 2022-08-16
然后尝试更新alpine的基础图像,这是第二个选项Pavol Krajkovič 2022-08-16
#2楼
得票数 3

SOLVED - 你需要添加--allow-untrusted的内容。

RUN apk add -X https://nl.alpinelinux.org/alpine/edge/main -u alpine-keys --allow-untrusted

RUN echo "@edge http://nl.alpinelinux.org/alpine/edge/main" >> /etc/apk/repositories
RUN apk update
Flavio Troia 提问于2022-08-31
你应该知道你在做什么,如果当前网络不受信任,这可能导致流量劫持。除非有人要求你这样做,否则不要这样做。PotatoChips 2022-09-19
#3楼
得票数 2

只要在结尾处添加--allow-untrusted就可以了。

请参考这个链接。https://github.com/rayluo/grin/blob/master/Dockerfile.alpine

RUN apk add wqy-zenhei --update-cache --repository http://nl.alpinelinux.org/alpine/edge/testing --allow-untrusted
Deva 提问于2022-10-19
Deva 修改于2022-10-19