CentOS 上配置 Docker 使用 NVIDIA GPU

CentOS 上配置 Docker 使用 NVIDIA GPU(前提是已安装 NVIDIA 驱动):


在 CentOS 上配置 Docker 使用 NVIDIA GPU

本文介绍如何在已安装 NVIDIA 驱动的 CentOS 系统中,配置 Docker 使用 GPU 资源进行加速。

✅ 前提条件

  • 已安装 CentOS 7 或 CentOS 8

  • 已正确安装并加载 NVIDIA 驱动

  • 已安装 Docker

    bash 复制代码
    docker --version
  • 可联网访问 NVIDIA 官方仓库


第一步:添加 NVIDIA Container Toolkit 的 YUM 仓库

bash 复制代码
curl -s -L https://nvidia.github.io/libnvidia-container/stable/rpm/nvidia-container-toolkit.repo | \
  sudo tee /etc/yum.repos.d/nvidia-container-toolkit.repo

第二步:安装 NVIDIA Container Toolkit

bash 复制代码
sudo yum install -y nvidia-container-toolkit

好的,我将更新博客内容,在"第三步:配置 Docker 使用 NVIDIA runtime"中加入你提供的手动修改 /etc/docker/daemon.json 的方法。以下是更新后的博客正文部分:


第三步:配置 Docker 使用 NVIDIA runtime

你可以使用命令行自动配置:

bash 复制代码
sudo nvidia-ctk runtime configure --runtime=docker

或者手动修改 Docker 配置文件

编辑 /etc/docker/daemon.json

json 复制代码
{
  "default-runtime": "nvidia",
  "runtimes": {
    "nvidia": {
      "path": "nvidia-container-runtime",
      "runtimeArgs": []
    }
  }
}

⚠️ 如果该文件已存在,请合并原有内容,而不是直接替换。

保存后重启 Docker 服务:

bash 复制代码
sudo systemctl restart docker

第四步:验证 GPU 是否可被容器使用

使用官方 CUDA 镜像测试:

bash 复制代码
docker run --rm --gpus all nvidia/cuda:12.2.0-base-ubuntu22.04 nvidia-smi

如输出如下内容,表示配置成功:

复制代码
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 535.xx.xx    Driver Version: 535.xx.xx    CUDA Version: 12.2     |
|-------------------------------+----------------------+----------------------+
| GPU Name        Persistence-M| Bus-Id        Disp.A | Volatile Uncorr. ECC |
| ...                                                                  |
+-----------------------------------------------------------------------------+

常见问题

参考资料


如需生成 .md 文件或发布为博客,我也可以帮你转换格式或优化风格。是否需要?

相关推荐
java叶新东老师4 小时前
git stash 命令详解
linux·运维·flink
写bug的羊羊6 小时前
CentOS 9 配置国内 YUM 源
linux·运维·centos
Johny_Zhao8 小时前
CentOS Stream 9上部署FTP应用服务的两种方法(传统安装和docker-compose)
linux·网络安全·信息安全·kubernetes·云计算·containerd·ftp·yum源·系统运维
守望时空339 小时前
RustDesk搭建指南
linux
C++ 老炮儿的技术栈9 小时前
在 Scintilla 中为 Squirrel 语言设置语法解析器的方法
linux·运维·c++·git·ubuntu·github·visual studio
ldj20209 小时前
Docker的docker-compose类比Spring的ApplicationContext
spring·docker
白鹭9 小时前
基于LNMP架构的分布式个人博客搭建
linux·运维·服务器·网络·分布式·apache
ldj202010 小时前
docker 自定义网桥作用
docker·容器
java叶新东老师10 小时前
linux 部署 flink 1.15.1 并提交作业
linux·运维·flink
程序员JerrySUN11 小时前
Linux系统架构核心全景详解
linux·运维·系统架构