Nvidia-docker를 설치하기 전에 당연히 docker는 먼저 설치가 되어 있어야 한다.

 

설치된 docker 환경에서 GPU를 사용할 수 있도록 nvidia-docker을 설치하는 가장 좋은 방법은 역시 nvidia에서 공식적으로 제공하는 github 사이트를 이용하는 것이다.

왜냐하면 Nvidia가 제공하는 공식 사이트이니까 당연한 것도 있지만 nvidia-docker 버전도 변경 주기가 짧은 편이라 조금씩 설치나 운용 방법이 달라지기 때문에 가장 최신 내용을 확인하려면, 당연히... 제작사가 제공하는 사이트가 가장 빠르기 때문이다.

사실 이 페이지도 이전 설치 방법은 벌써 낡아서 해당 페이지를 삭제하고 새로 업로드 한 것이다. 원치 않은 삽질 때문에 빡침이.. 쿨럭..

 

https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/user-guide.html

 

User Guide — NVIDIA Cloud Native Technologies documentation

GPUs can be specified to the Docker CLI using either the --gpus option starting with Docker 19.03 or using the environment variable NVIDIA_VISIBLE_DEVICES. This variable controls which GPUs will be made accessible inside the container. Note When using the

docs.nvidia.com

 

그래도 귀찮은 당신을 위해서는 아래와 같이 수행하면 된다. 

 

1) 혹시 이전 버전이 있다면 아래 스크립트로 이전 버전을 제거한다.

$ docker volume ls -q -f driver=nvidia-docker | xargs -r -I{} -n1 docker ps -q -a -f volume={} | xargs -r docker rm -f
$ sudo apt-get purge -y nvidia-docker

 

2) 아래 스크립트를 실행해서 nvidia-docker 배포판을 설치하기 위한 환경을 구성한다.

$ distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
$ curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | sudo apt-key add -
$ curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | sudo tee /etc/apt/sources.list.d/nvidia-docker.list

 

3) 해당 스크립트는 반드시 위 작업 이후 실행해야 한다.

$ sudo apt-get update 

 

4) 이제 nvidia-docker를 설치한다.

$ sudo apt-get install -y nvidia-container-toolkit
$ sudo systemctl restart docker

 

6) 설치 여부 검증하기, 하기와 같이 nvidia-smi 정보가 잘 나오면 성공.

# 2023.05.29 기준, ubuntu 20.04

$ sudo docker run --rm --runtime=nvidia --gpus all nvidia/cuda:11.6.2-base-ubuntu20.04 nvidia-smi

 

# 2023.05.29 기준, ubuntu 18.04

$ sudo docker run --rm --runtime=nvidia --gpus all nvidia/cuda:11.6.2-base-ubuntu18.04 nvidia-smi

 

# docker version 19.03 이상
$ docker run --gpus all nvidia/cuda:10.0-base nvidia-smi

# docker version 19.03 미만
$ docker run --runtime=nvidia nvidia/cuda:10.0-base nvidia-smi

 

※ 주의사항

ㆍ2020년 3월 기준, nvidia-docker 실행 스크립트가 변했음을 알 수 있다.

    docker version 19.03 부터 nvidia-docker를 설치하면 --gpus 명령을 사용해야 한다. 

    19.03 이하 버전에서는 nvidia-docker 버전에 따라 아래처럼 사용한다.

    nvidia-docker v2에서는 --gpus all 대신 --runtime=nvidia를 사용한다.

2023년 5월 기준, 

    --runtime=nvidia --gpus all 모두 사용한다. (nvidia 사용자 가이드)

반응형

'Linux' 카테고리의 다른 글

SQLAlchemy 설치, pip install SQLAlchemy  (0) 2020.04.03
필수 SW, CPU 온도 체크, lm-sensors  (0) 2020.03.28
필수 SW, FileZilla Client  (0) 2020.03.28
docker pytorch 설치  (0) 2019.11.08
실행중인 docker container 접속  (0) 2019.09.29

+ Recent posts