Nvidia Container Toolkit

Javier Zhang
1 min readDec 4, 2019

--

安裝環境

  • OS:Ubuntu 24.04 64 bit
  • 显卡:NVidia GTX 3080
  • NVidia Driver 555

配置Docker源

# 更新源

$ sudo apt update

# 启用HTTPS

$ sudo apt install -y apt-transport-https ca-certificates curl gnupg-agent software-properties-common

安装Docker CE

$ curl https://get.docker.com | sh \
&& sudo systemctl --now enable docker

验证Docker CE

$ sudo docker run hello-world

配置nvidia-docker

# 添加源

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 update

# 安装并重启docker

sudo apt update
sudo apt install -y nvidia-container-toolkit
sudo pkill -SIGHUP dockerd
sudo systemctl restart docker

# 執行 nvidia/cuda container 裡的 nvidia-smi指令,確定該container有確實使用到GPU

$ sudo docker run --rm --gpus all nvidia/cuda:12.5.0-base-ubuntu22.04 nvidia-smi

Try

# 在官方CUDA镜像上测试 nvidia-smi

$sudo docker run --gpus all nvidia/cuda:12.5-base nvidia-smi

# 启动支持双GPU的容器

$sudo docker run --gpus 2 nvidia/cuda:12.5-base nvidia-smi

# 指定GPU 1,运行容器

$ sudo docker run --gpus device=0 nvidia/cuda:12.5-base nvidia-smi

--

--