D_ontory : 개발스토리

[Docker ] Nvidia docker2 설치 방법 및 오류 해결 내역 본문

Linux and Docker

[Docker ] Nvidia docker2 설치 방법 및 오류 해결 내역

D_on 2025. 2. 4. 15:57
반응형

들어가기에 앞서, 이번 서버에서 docker 를 사용하기위해 docker와 nvidia docker2 를 설치했다.
확실한 원인은 발견하지 못하였으나, 짐작하기로는 anaconda 환경이 activate 된 상태에서 설치를 강행하다보니
nvidia 버전과의 충돌이 생긴 것이 아닐까 싶다.

현재 터미널에서 conda 환경이 activate 되어있다면 꼭 conda deactivate 를 통해 콘다환경에서 나와서 도커설치를 진행하길 바란다.

 

sudo apt-get install -y nvidia-docker2  실행 시 오류
E: nvidia-docker2 enable to locate package
$ sudo apt-get install -y nvidia-docker2
패키지 목록을 읽는 중입니다... 완료
의존성 트리를 만드는 중입니다... 완료
상태 정보를 읽는 중입니다... 완료
E: nvidia-docker2 패키지를 찾을 수 없습니다

 

< 해결방법 1 >

nvidia-docker2 패키지를 찾을 수 없다면, 먼저 nvidia-container-toolkit 설치가 필요하다.

sudo apt update
sudo apt install -y nvidia-container-toolkit

 

여기서 해결되면 정말 좋겠지만, 

다음과같이 nvidia-container-toolkit 패키지마저 찾지 못하는 상황이 발생할 수도 있다.

 

< 해결방법 2 > : nvidia-container-toolkit 패키지 없을 경우

nvidiadml GPG key 를 가져와야하는데, 이것을 가지고 오지 못했을 경우 패키지를 찾을 수 없다고 한다.
그렇다면 수동으로 가져와보자.

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
 curl -s -L https://nvidia.github.io/libnvidia-container/$distribution/libnvidia-container.list | \
    sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
    sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

 

여기까지 했다면 한번 sudo apt update 를 해준다. 지금까지 오류를 만나지 않았다는 가정 하에 다시 Nvidia docker 2 설치를 위한 nvidia-container-toolkit을 설치하러 가본다.

 

sudo apt update
sudo apt install -y nvidia-container-toolkit


nvidia container runtime 을 활성화해준다.

sudo nvidia-ctk runtime configure --runtime=docker

 

docker 재시작

sudo systemctl restart docker

 

정상 작동하는지 Test

 docker run --rm --gpus all nvidia/cuda:12.2.2-runtime-ubuntu22.04 nvidia-smi

nvidia-smi 한 화면이 정상적으로 나왔다면 완료!

 

 

nvidia docker 가 설치되지 않는다면 --gpus all bash 명령어를 사용하지 못하거나, container에 들어가도 nvidia-smi 명령어를 통해 gpu를 조회 할 수 없게 된다.

docker: Error response from daemon: could not select device driver "" with capabilities: [[gpu]].

다음과 같은 오류가 나올 때에는 nvidia docker 가 잘 설치되어 있는지 확인해 보는 것이 좋다.

 

 

반응형
Comments