NVIDIA Dockerfile 빌드 시, GPG error
MMdetection 도커 GPG error
MMdetection 개발 환경 구성을 하는 과정에서 파이토치, CUDA, CUDNN 이 포함된 Docker 를 설치하였다.
이 Docker 를 설치하는 과정에서 GPG (GNU Privacy Cuard) 에러가 발생하여 수정하는 방법을 기록한다.
NVIDIA Dockerfile 빌드 시, GPG error
테스트환경
- Ubuntu 20.04.5 LTS
- NVIDIA GeForce RTX 3050 Ti Laptop GPU
- NVIDIA-SMI 515.86.01
Dockerfile
실행한 Dockerfile 은 다음과 같다. 이 file 을 통해 Docker 이미지를 받고, apt-get update 를 수행하였다.
ARG PYTORCH="1.9.0" ARG CUDA="11.1" ARG CUDNN="8" FROM pytorch/pytorch:${PYTORCH}-cuda${CUDA}-cudnn${CUDNN}-devel ENV TORCH_CUDA_ARCH_LIST="8.6" ENV TORCH_NVCC_FLAGS="-Xfatbin -compress-all" ENV CMAKE_PREFIX_PATH="$(dirname $(which conda))/../" RUN apt-get update
Docker 이미지를 받고, apt-get update 를 수행 과정에서 GPG 에러가 발생한다. 에러의 요지는 공개키가 Available 하지 않다는 내용이다.
Reading package lists… W: GPG error: https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64 InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY A4B469963BF863CC E: The repository 'https://developer.download.nvidia.com/compute/cuda/repos/ubuntu1804/x86_64 InRelease' is not signed.
GPG 에러를 해결하기 위해 키를 삭제하고 등록하는 명령어를 추가한다.
… RUN rm /etc/apt/sources.list.d/cuda.list RUN rm /etc/apt/sources.list.d/nvidia-ml.list RUN apt-key del 7fa2af80 && apt-key adv --fetch-keys http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1604/x86_64/3bf863cc.pub RUN apt-get update
참고자료
NVIDIA Dockerfile 빌드 과정에서 발생하는 GPG 에러 관련해서 NVIDIA github 에 있는 토론을 참고한다.
https://github.com/NVIDIA/nvidia-docker/issues/1631