Windows上使用Docker Desktop部署GPUStack

270 阅读2分钟

1. 前置条件

  • 宿主机必须配备支持CUDA的NVIDIA GPU,并安装与该GPU型号匹配的NVIDIA驱动(可通过nvidia-smi验证驱动是否安装成功)
  • 安装 Docker Desktop
  • 安装 WSL2(推荐 Ubuntu-22.04 发行版)
  • WSL2 中安装 CUDA Toolkit
  • WSL2 中安装 cuDNN

1.1 宿主机安装与GPU型号匹配的NVIDIA驱动

安装完成后输入以下命令验证是否安装成功

nvidia-smi

出现以下界面表示安装成功! image.png

1.2 安装 Docker Desktop

Docker Desktop Installer.exe文件目录下的终端执行以下命令,将Docker Desktop安装到D盘。

start /w "" "Docker Desktop Installer.exe" install -accept-license --installation-dir="D:\Docker" --wsl-default-data-root="D:\Docker\data" --windows-containers-default-data-root="D:\\Docker"

1.3 安装 WSL2(Ubuntu-22.04)

安装Ubuntu-22.04

wsl --install -d Ubuntu-22.04

建议移动ubuntu位置至D盘

wsl --manage Ubuntu-22.04 --move "D:\wsl\Ubuntu"

安装完成后查看wsl列表

wsl --list

image.png 将Ubuntu-22.04设置为默认值

wsl --set-default Ubuntu-22.04

image.png 进入wsl

wsl

image.png

1.4 WSL2 中安装 CUDA Toolkit

nvidia-smi查看可知CUDA版本为13.0,进入 CUDA Toolkit 存档界面选择CUDA Toolkit 13.0.0,然后选择以下配置 image.png 在wsl终端执行以下命令安装

sudo wget https://developer.download.nvidia.com/compute/cuda/repos/wsl-ubuntu/x86_64/cuda-wsl-ubuntu.pin
sudo mv cuda-wsl-ubuntu.pin /etc/apt/preferences.d/cuda-repository-pin-600
sudo wget https://developer.download.nvidia.com/compute/cuda/13.0.0/local_installers/cuda-repo-wsl-ubuntu-13-0-local_13.0.0-1_amd64.deb
sudo dpkg -i cuda-repo-wsl-ubuntu-13-0-local_13.0.0-1_amd64.deb
sudo cp /var/cuda-repo-wsl-ubuntu-13-0-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda-toolkit-13-0

此时CUDA已安装完成,可以删除下载的.deb软件包

rm cuda-repo-wsl-*

配置 CUDA 环境变量,编辑vim ~/.bashrc文件,增加以下配置

export CUDA_HOME=/usr/local/cuda-13.0
export PATH=$PATH:$CUDA_HOME/bin
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CUDA_HOME/lib64
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$CUDA_HOME/extras/CUPTI/lib64

刷新配置

source ~/.bashrc

验证安装是否成功

nvcc --version

image.png

1.5 WSL2 中安装 cuDNN

一般可在 cuDNN 存档界面查看匹配CUDA的版本(需点击进入查看是否存在cudnn9-cuda-13信息),因此选择cuDNN版本9.12.0,进入下载界面 image.png 在wsl终端执行以下命令安装

sudo wget https://developer.download.nvidia.com/compute/cudnn/9.12.0/local_installers/cudnn-local-repo-ubuntu2404-9.12.0_1.0-1_amd64.deb
sudo dpkg -i cudnn-local-repo-ubuntu2404-9.12.0_1.0-1_amd64.deb
sudo cp /var/cudnn-local-repo-ubuntu2404-9.12.0/cudnn-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cudnn

此时cuDNN已安装完成,可以删除下载的.deb软件包

rm cudnn-local-repo-*

因为CUDA版本为13.0.因为还需在wsl终端执行以下命令

sudo apt-get -y install cudnn9-cuda-13

出现以下界面表示安装成功! image.png

2. 安装GPUStack

  • 创建并进入D:\DockerContainer\GPUStack文件夹
  • 在该文件夹下创建并编写docker-compose.yaml文件
services:
  gpustack:
    container_name: gpustack
    image: gpustack/gpustack
    restart: always
    ipc: host
    volumes:
      - ./volumn:/var/lib/gpustack
    ports:
      - "8000:80"
    deploy:
      resources:
        reservations:
          devices:
            - driver: nvidia
              capabilities: [gpu]
  • 在该文件夹下进入终端,使用以下命令启动容器
docker-compose up -d
  • 访问http://127.0.0.1:8000进入GPUStack登录页
  • 账户名为admin, GPUStack初始密码需输入以下命令获取
docker exec -it gpustack cat /var/lib/gpustack/initial_admin_password

image.png 至此GPUStack在Windows上部署结束,可以愉快地部署自己的AI大模型了!