构建Docker镜像时遇仓库未签名错误(无sudo权限)
解决Docker构建中NVIDIA CUDA仓库签名验证失败问题
针对你遇到的NO_PUBKEY A4B469963BF863CC签名验证失败、构建返回代码100的问题,以下是几种可行的解决方法:
方法1:在Dockerfile中导入缺失的公钥
虽然管理员提到是仓库问题,但错误日志明确显示缺少对应公钥,可直接在apt-get update前添加公钥导入步骤(Docker容器内默认是root权限,无需sudo):
方式A:通过keyserver导入
RUN apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A4B469963BF863CC RUN apt-get update && apt-get install -y [你的目标包]
方式B:直接从NVIDIA官方获取公钥
RUN curl -fsSL https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2004/x86_64/7fa2af80.pub | apt-key add - RUN apt-get update && apt-get install -y [你的目标包]
方法2:临时跳过签名验证(应急方案)
如果确实是仓库端问题导致签名无法验证,可临时允许未认证的源更新(注意:此方法会降低安全性,仅用于应急测试):
RUN apt-get update --allow-unauthenticated && apt-get install --allow-unauthenticated -y [你的目标包]
方法3:更换官方基础镜像
第三方镜像可能存在源配置问题,建议替换为NVIDIA官方的CUDA镜像,再按需安装PyTorch和OpenCV:
# 使用官方CUDA 11.0基础镜像(Ubuntu 20.04) FROM nvidia/cuda:11.0-cudnn8-runtime-ubuntu20.04 # 安装Python 3.8、PyTorch 1.7和OpenCV 4.2 RUN apt-get update && apt-get install -y python3.8 python3-pip RUN pip3 install torch==1.7.0+cu110 torchvision==0.8.1+cu110 torchaudio==0.7.0 -f https://download.pytorch.org/whl/torch_stable.html RUN apt-get install -y libopencv-dev python3-opencv
内容的提问来源于stack exchange,提问作者Farah Jabeen
相关产品推荐
相关产品推荐

