docker - 从过去可以工作的 Dockerfile 构建问题
问题描述
我在从过去可以工作的 dockerfile 构建 docker 映像时遇到问题:
(我的dockerfile有更多步骤,但这足以重现)
FROM gcr.io/deeplearning-platform-release/tf2-gpu.2-2
RUN apt-get update && \
apt-get install --no-install-recommends -y libsndfile-dev
ENTRYPOINT ["ls", "-l"]
运行时docker build
,我收到以下错误(在步骤 2 中):
W: GPG error: http://packages.cloud.google.com/apt gcsfuse-bionic InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY [some key] NO_PUBKEY [some key]
E: The repository 'http://packages.cloud.google.com/apt gcsfuse-bionic InRelease' is not signed.
W: GPG error: http://packages.cloud.google.com/apt cloud-sdk-bionic InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY [some key] NO_PUBKEY [some key]
E: The repository 'http://packages.cloud.google.com/apt cloud-sdk-bionic InRelease' is not signed.
我已经在我的本地机器和云构建(在谷歌云上)上尝试过,但没有成功。
从图像tf2-gpu.2-4
而不是tf2-gpu.2-2
作品开始,但该版本与我依赖的其他依赖项不兼容。
请注意,组合tf2-gpu.2-2
和 libsndfile-dev 以前可以正常工作,但现在不行了。
为什么我会收到这些错误,我该怎么做才能修复它们?
谢谢!
解决方案
这是一个已知的问题。阅读此内容以获取更多信息。
您可以首先使用以下命令添加正确的存储库 GPG 密钥。
curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
更新的 Dockerfile 将是:
FROM gcr.io/deeplearning-platform-release/tf2-gpu.2-2
RUN curl https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
RUN apt-get update && \
apt-get install --no-install-recommends -y libsndfile-dev
ENTRYPOINT ["ls", "-l"]