windows环境中docker配置gpu环境

1. 虚拟化

检查是否安装Hyper-V,在开始菜单搜索点击“启用或关闭Windows功能”
勾选Windows虚拟机监控程序平台、虚拟机平台,并重启电脑
image
完成后打开任务管理器,在性能页CPU上显示“虚拟化:已启用”
image

2. 安装WSL

wsl --install
wsl --install -d Ubuntu-22.04	#安装Ubuntu发行版
wsl -l -v						#查看发行版
wsl --set-default-version 2		#如果安装过wsl1与wsl2,通过这个切换

3. 进入Ubuntu

wsl -d Ubuntu-22.04				#进入ubuntu环境
docker ps -a 					#查看是否安装docker(如果已经安装docker desktop,不用再次安装)

4. 安装nvidia-container-toolkit

NVIDIA Container Toolkit 的主要作用是将 NVIDIA GPU 设备挂载到容器中。

  1. 安装以下步骤前提
sudo apt-get update && sudo apt-get install -y --no-install-recommends curl  gnupg2
  1. 配置生产环境代码库
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
  1. 从存储库更新软件包列表:
sudo apt-get update
  1. 安装 NVIDIA 容器工具包:
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}
  1. 配置使用runtime
sudo nvidia-ctk runtime configure --runtime=docker

重启docker

sudo systemctl restart docker
  1. 测试
    启动一个 Docker 容器进行测试,其中命令中增加 --gpu 参数来指定要分配给容器的 GPU。
    --gpu 参数可选值:
  • --gpus all:表示将所有 GPU 都分配给该容器
  • --gpus "device=[,...]":对于多 GPU 场景,可以通过 id 指定分配给容器的 GPU,例如 –gpu “device=0” 表示只分配 0 号 GPU 给该容器
    • GPU 编号则是通过nvidia-smi 命令进行查看
docker run --rm --gpus all  nvidia/cuda:12.0.1-runtime-ubuntu22.04 nvidia-smi

打印容器GPU信息

posted @ 2025-12-08 17:04  czlyt  阅读(0)  评论(0)    收藏  举报