반응형

본 글은 아래의 Nvidia 공식 문서를 참고합니다.

https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/index.html

 

Overview — NVIDIA Container Toolkit

Overview The NVIDIA Container Toolkit is a collection of libraries and utilities enabling users to build and run GPU-accelerated containers. It currently includes: The NVIDIA Container Runtime (nvidia-container-runtime) The NVIDIA Container Toolkit CLI (nv

docs.nvidia.com

 

 

호스트 컴퓨터에서 설치해서 쓰고 있는 Nvidia 드라이버를 docker 에서도 사용하기 위해서는 Container Toolkit을 설치해야한다고 한다.

 

Nvidia Container Toolkit 설치하기 [1]

작성자의 운영체제는 Ubuntu 24.04 이므로, 이에 맞추어 작성했다.

 

1. 아래의 설명에 따라서 사전요구조건들을 설치한다.

sudo apt-get update && sudo apt-get install -y --no-install-recommends \
   ca-certificates \
   curl \
   gnupg2

 

 

2. 툴 저장소를 연결한다.

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
  && curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.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

 

 

3. 저장소로부터 패키지 리스트를 업데이트 한다.

sudo apt-get update

 

 

4. NVIDIA Containter Toolkit 패키지를 설치한다.

Toolkit 버전은 다를 수 있으니 이는 확인하고 설치하자

export NVIDIA_CONTAINER_TOOLKIT_VERSION=1.19.0-1
  sudo apt-get install -y \
      nvidia-container-toolkit=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \
      nvidia-container-toolkit-base=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \
      libnvidia-container-tools=${NVIDIA_CONTAINER_TOOLKIT_VERSION} \
      libnvidia-container1=${NVIDIA_CONTAINER_TOOLKIT_VERSION}

 

설치한 Container Toolkit을 Docker 에 연동하기

0. 사전 조건

- NVIDIA Container Toolkit 이 지원하는 Containter Engine 이 설치되어있어야한다.

- 앞서 NVIDIA Containter Toolkit 을 설치해야한다.

 

1. nvidia-ctk 명령어로 container runtime 을 구성한다.

--runtime 옵션의 docker 가 사용자가 설치한 Container Engine 이다.

sudo nvidia-ctk runtime configure --runtime=docker

 

nvidia-ctk 명령어는 호스트 컴퓨터의 /etc/docker/daemon.json 파일을 수정한다. 해당 파일을 업데이트함으로서, Docker가 NVIDIA Container Runtime 을 사용할 수 있다.

 

2. Docker daemon을 재시작한다.

sudo systemctl restart docker

 

 

Docker 가 NVIDIA GPU Driver 를 쓸 수 있는지 확인하기

설치 후에 nvidia-smi 라는 명령어로 설치된 NVIDIA 드라이버의 버전과 GPU 정보를 얻어봄으로서 정상적으로 설치되었음을 확인하곤 한다.

이와 같은 방법으로 확인해보자.

 

1. (Optional) Ubuntu 24.04 이미지 다운로드

docker pull ubuntu:24.04

 

아래 명령어로 이미지가 잘 내려받아졌음을 확인한다.

docker images

 

나의 결과는 다음과 같다.

 

2. nvidia-smi 입력해보기

두 가지 방법이 가능하다.

 

1) nvidia-smi 만 띄워보기

도커 이미지를 컨테이너에 올리고 nvidia-smi 만 실행한다.

sudo docker run --rm --runtime=nvidia --gpus all ubuntu:24.04 nvidia-smi

 

2) docker 이미지를 불러와서 터미널 형태로 열고, 해당 터미널에서 입력해보기

아래의 명령어를 입력하여 컨테이너를 실행한다.

docker run -it --gpus all ubuntu:24.04 /bin/bash

 

이후 나타난 터미널 콘솔에 nvidia-smi 를 입력하면 아래와 같은 결과를 얻을 수 있다.

 

끝.

 

[1] Installing the NVIDIA Container Toolkit

[2] Running a Sample Workload

 

*** EOF ***

728x90

+ Recent posts