Windows 11 上 WSL2 Docker 容器如何启用 GPU
一、确保宿主机安装了NVIDIA驱动和NVIDIA Docker Toolkit。
1.1、添加nvidia的仓库
sudo curl -s -L https://nvidia.github.io/nvidia-container-runtime/gpgkey |
sudo apt-key add -
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
sudo curl -s -L https://nvidia.github.io/nvidia-container-runtime/$distribution/nvidia-
container-runtime.list |
sudo tee /etc/apt/sources.list.d/nvidia-container-runtime.list
sudo apt-get update
1.2、安装nvidia-container-runtime
sudo apt-get install -y nvidia-container-toolkit(新版)
sudo nvidia-ctk runtime configure –runtime=docker
1.3、使用以下命令配置容器运行时nvidia-ctk
该nvidia-ctk命令修改/etc/docker/daemon.json主机上的文件。该文件已更新,以便 Docker 可以使
用 NVIDIA 容器运行时。 sudo nvidia-ctk runtime configure –runtime=docker #检查 Docker 配置文件,确保已启用对 GPU 的支持 { “registry-mirrors”: [ “https://xxxx.mirror.aliyuncs.com” ], “runtimes”: { “nvidia”: { “args”: [],
“path”: “nvidia-container-runtime” } } } 1.4、重新启动 Docker 守护进程 sudo systemctl restart docker 1.5 测试
执行以下命令
docker run –rm –runtime=nvidia –gpus all nvcr.io/nvidia/cuda:12.4.1-cudnn-runtime- ubuntu22.04 nvidia-smi docker run –rm –runtime=nvidia –gpus all nvcr.io/nvidia/cuda:12.1.0-runtime- ubuntu20.04 nvidia-smi Tue Feb 27 01:38:39 2024 +—————————————————————————————+ | NVIDIA-SMI 535.154.05 Driver Version: 535.154.05 CUDA Version: 12.2 | |—————————————–+———————-+———————-+ | 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 Tesla V100S-PCIE-32GB Off | 00000000:23:00.0 Off | 0 | | N/A 68C P0 50W / 250W | 12352MiB / 32768MiB | 0% Default | | | | N/A | +—————————————–+———————-+———————-+ +—————————————————————————————+ | Processes: | | GPU GI CI PID Type Process name GPU Memory | | ID ID Usage | |=======================================================================================|
| 0 N/A N/A 592394 C …/envs/Langchain-Chatchat/bin/python 12348MiB |