目的:讓 docker 容器可以適用 nvidia 的 GPU
Nvidia 安裝說明網頁:
https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html
先進行必要條件的安裝:
sudo apt-get update && sudo apt-get install -y –no-install-recommends \
ca-certificates \
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 sed -i -e ‘/experimental/ s/^#//g’ /etc/apt/sources.list.d/nvidia-container-toolkit.list
更新資源來源:
sudo apt-get update
開始安裝:
export NVIDIA_CONTAINER_TOOLKIT_VERSION=1.18.2-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}
設定 Docker 使用 NVIDIA runtime:
# 1) 生成預設設定
sudo nvidia-ctk runtime configure –runtime=docker
# 2) 重新啟動 Docker
sudo systemctl restart docker
測試 GPU 是否在容器可見:
docker run –rm –gpus all nvidia/cuda:12.3.2-base-ubuntu22.04 nvidia-smi
回應:
Status: Downloaded newer image for nvidia/cuda:12.3.2-base-ubuntu22.04
Tue Mar 3 06:14:57 2026
+—————————————————————————————–+
| NVIDIA-SMI 590.48.01 Driver Version: 590.48.01 CUDA Version: 13.1 |
+—————————————–+————————+———————-+
| 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 GeForce RTX 3060 On | 00000000:01:00.0 Off | N/A |
| 0% 48C P8 17W / 170W | 11129MiB / 12288MiB | 0% Default |
| | | N/A |
+—————————————–+————————+———————-+
| 1 NVIDIA GeForce RTX 3060 On | 00000000:02:00.0 Off | N/A |
| 0% 43C P8 16W / 170W | 10893MiB / 12288MiB | 0% Default |
| | | N/A |
+—————————————–+————————+———————-+
+—————————————————————————————–+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=========================================================================================|
| No running processes found |
+—————————————————————————————–+
完工。