NVIDIA Container Toolkit のインストール
- 2025-02-19 作成
- 2026-01-14 更新
NVIDIA Container Toolkit とは
NVIDIA Container Toolkit は、Dockerコンテナ内でNVIDIA GPUを使うためのツール集です。
dockerコマンドで--runtime=nvidiaオプションを渡す場合や、FROM nvidia/cudaと書かれたDockerfileを使う場合1には、必須になってます。
前提として、DockerとNVIDIAドライバがインストールされている必要があります。
インストール
Installing the NVIDIA Container Toolkit — NVIDIA Container Toolkit documentation
インストールは、基本的にはこの公式ドキュメントに従えばOKなんですが、NVIDIAのドキュメントは重複してたりあちこち散らばってたりするのでまとめました。
WSLでも同じ手順でOKです。
sudo apt-get update && sudo apt-get install -y --no-install-recommends \
curl \
gnupg2
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
sudo apt-get update
export NVIDIA_CONTAINER_TOOLKIT_VERSION=1.18.1-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}
初期設定
sudo nvidia-ctk runtime configure --runtime=docker
sudo systemctl restart docker
Rootless modeは、自分は使ってないのでスキップ
動作確認
docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi
出力例
Wed Feb 19 02:54:45 2025
+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 570.86.16 Driver Version: 572.16 CUDA Version: 12.8 |
|-----------------------------------------+------------------------+----------------------+
| GPU Name Persistence-M | Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap | Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|=========================================+========================+======================|
| 0 NVIDIA RTX 2000 Ada Gene... On | 00000000:01:00.0 Off | N/A |
| N/A 41C P3 8W / 35W | 0MiB / 8188MiB | 0% Default |
| | | N/A |
+-----------------------------------------+------------------------+----------------------+
+-----------------------------------------------------------------------------------------+
| Processes:
|
| GPU GI CI PID Type Process name
GPU Memory |
| ID ID
Usage |
|=========================================================================================|
| No running processes found
|
+-----------------------------------------------------------------------------------------+
以上です。
注釈
-
nvidia/cuda - Docker Image | Docker Hub を “NVIDIA Container Toolkit” で検索すると、 “The NVIDIA Container Toolkit for Docker is required to run CUDA images.” って書いてあります。 ↩