编辑
2025-05-22
运维
00

目录

Ubuntu 安装 RTX 5070 Ti 并直通给 Docker 容器使用(含 GPU 驱动、容器工具)
系统环境
步骤总览
1. 确认显卡直通
2. 安装 NVIDIA 驱动
下载驱动(推荐使用官方 .run 安装器)
安装依赖:
安装驱动:
驱动验证:
3. 安装 Docker 与 nvidia-container-toolkit
添加 NVIDIA 容器源(Ubuntu 24.04 兼容方式)
安装 Docker CE
启动并验证 Docker
配置 Docker 使用 GPU
测试容器是否能访问 GPU

Ubuntu 安装 RTX 5070 Ti 并直通给 Docker 容器使用(含 GPU 驱动、容器工具)

总结了在 Ubuntu 24.04 上通过 ESXi 直通 NVIDIA RTX 5070 Ti,安装驱动并配置 Docker 容器使用 GPU 的完整步骤。


系统环境

  • 宿主机:ESXi 直通 RTX 5070 Ti
  • 虚拟机:Ubuntu 24.04
  • 显卡:NVIDIA GeForce RTX 5070 Ti
  • 容器引擎:Docker CE

步骤总览

1. 确认显卡直通

bash
lspci | grep -i nvidia

应看到显卡 VGA 和音频控制器信息:

0b:00.0 VGA compatible controller: NVIDIA Corporation Device 2c05 (rev a1) 0b:00.1 Audio device: NVIDIA Corporation Device 22e9 (rev a1)

2. 安装 NVIDIA 驱动

下载驱动(推荐使用官方 .run 安装器)

https://www.nvidia.com 下载适配驱动,例如 NVIDIA-Linux-x86_64-570.153.02.run

安装依赖:

bash
sudo apt update sudo apt install -y build-essential gcc make dkms linux-headers-$(uname -r) libglvnd-dev pkg-config

安装驱动:

bash
chmod +x NVIDIA-Linux-x86_64-*.run sudo ./NVIDIA-Linux-x86_64-*.run
  • 若提示缺少 32 位兼容库,可忽略
  • 建议选择:注册 DKMS 自动重建模块
  • 建议运行 nvidia-xconfig(如有 GUI)

驱动验证:

bash
nvidia-smi

输出应能正确识别 GPU、驱动版本、CUDA 版本。

image.png

3. 安装 Docker 与 nvidia-container-toolkit

添加 NVIDIA 容器源(Ubuntu 24.04 兼容方式)

bash
# 强制使用 Ubuntu 22.04 的源 export distribution=ubuntu22.04 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/$distribution/libnvidia-container.list | \ sed 's#deb #deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] #' | \ sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list sudo apt update sudo apt install -y nvidia-container-toolkit

安装 Docker CE

bash
sudo apt install -y ca-certificates curl gnupg lsb-release sudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | \ sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg echo \ "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] \ https://download.docker.com/linux/ubuntu jammy stable" | \ sudo tee /etc/apt/sources.list.d/docker.list > /dev/null sudo apt update sudo apt install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

启动并验证 Docker

bash
sudo systemctl enable docker sudo systemctl start docker

配置 Docker 使用 GPU

bash
sudo nvidia-ctk runtime configure --runtime=docker sudo systemctl restart docker

测试容器是否能访问 GPU

bash
docker run --rm --gpus all nvidia/cuda:12.3.1-base-ubuntu22.04 nvidia-smi

image.png