docker环境下脚本安装nvidia-container-toolkit

env

  • docker-ce/docker-compsoe
  • nvidia-container-toolkit
  • 兼容 RockyLinux / CentOS Stream / RHEL9 系列/alinuxlinux3

1.脚本install_nvidia_container_toolkit.sh

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
#!/usr/bin/env bash
# ============================================================
# NVIDIA Container Toolkit 安装脚本 (USTC镜像源)
# 适用于 RockyLinux / CentOS Stream / RHEL / Fedora
# 作者: 🔥焰
# ============================================================

set -e

echo "[INFO] 开始安装 nvidia-container-toolkit ..."

# 检查是否为root
if [ "$EUID" -ne 0 ]; then
echo "[ERROR] 请使用 root 权限执行此脚本!"
exit 1
fi

# 步骤 1: 配置 USTC 镜像源 repo
echo "[INFO] 配置 USTC 镜像源..."
curl -s -L https://mirrors.ustc.edu.cn/libnvidia-container/stable/rpm/nvidia-container-toolkit.repo | \
sed 's#nvidia.github.io/libnvidia-container/stable/#mirrors.ustc.edu.cn/libnvidia-container/stable/#g' | \
sed 's#nvidia.github.io/libnvidia-container/experimental/#mirrors.ustc.edu.cn/libnvidia-container/experimental/#g' | \
sed 's#https://nvidia.github.io/libnvidia-container/gpgkey#https://mirrors.ustc.edu.cn/libnvidia-container/gpgkey#g' \
> /etc/yum.repos.d/nvidia-container-toolkit.repo

# 步骤 2: 刷新缓存并安装
echo "[INFO] 更新缓存并安装..."
dnf makecache -y
dnf install -y nvidia-container-toolkit

# 步骤 3: 配置 Docker Runtime
echo "[INFO] 配置 Docker runtime..."
nvidia-ctk runtime configure --runtime=docker

# 步骤 4: 重启 Docker 服务
echo "[INFO] 重启 Docker 服务..."
systemctl daemon-reload
systemctl restart docker

# 步骤 5: 验证安装
echo "[INFO] 验证 nvidia-container-toolkit 安装..."
if command -v nvidia-container-runtime &>/dev/null; then
echo "[OK] nvidia-container-runtime 已安装: $(nvidia-container-runtime --version 2>/dev/null | head -n1)"
else
echo "[WARN] 未检测到 nvidia-container-runtime,请检查安装日志。"
fi

echo "[DONE] NVIDIA Container Toolkit 安装完成 🎉"

2.使用方式

1
2
chmod +x install_nvidia_container_toolkit.sh
sudo ./install_nvidia_container_toolkit.sh

3.验证方法

安装完成后,可通过以下命令验证:

1
docker run --rm --gpus all nvidia/cuda:12.4.0-base-ubuntu22.04 nvidia-smi

若输出 GPU 信息,即说明配置成功 。