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 文件或发布为博客,我也可以帮你转换格式或优化风格。是否需要?

相关推荐
chen<>13 分钟前
malloc 和 free 背后发生了什么?
java·linux·服务器·操作系统
小二李30 分钟前
第12章 nestjs服务端开发:RBAC权限系统设计
java·linux·前端
feilieren41 分钟前
ubuntu 安装 docker
linux·ubuntu·docker
Tanner_SL1 小时前
Linux笔记之BASH命令行操作
linux·bash
judezh1 小时前
一个 Agent 平台要起 12 个容器,做演示能砍到几个?
docker
raindayinrain1 小时前
深入理解Linux内核--文件描述符,文件对象,索引节点,虚拟文件系统,性能优化
linux·虚拟文件系统
飞询1 小时前
ubuntu 安装 docker
ubuntu·docker
新时代牛马1 小时前
CFS调度源码:从 schedule() 到pick_next_entity 的vruntime 公平
linux·运维·网络
bu_shuo1 小时前
Linux中修改demo.c文件的权限
linux·c语言
0+1111 小时前
Linux --库制作与原理
linux·运维·服务器