centOS 快速安装和配置 NVIDIA docker Container Toolkit

要在 CentOS 上正确安装和配置 NVIDIA Container Toolkit,您可以按照以下步骤进行操作,如果1和2都已经完成,可以直接进行第3步NVIDIA Container Toolkit安装配置。

1. 安装 NVIDIA GPU 驱动程序:

您可以从 NVIDIA 官方网站下载适用于您的 GPU 型号和 CentOS 版本的驱动程序,并按照安装指南进行安装。确保您的系统已正确安装并配置了 NVIDIA GPU 驱动程序。

也可参考之前写的
在线安装

https://blog.csdn.net/holyvslin/article/details/132299184
下载安装:

https://blog.csdn.net/holyvslin/article/details/132143104

2. 安装 Docker CE:

2.1 删除旧版本的 Docker(如果存在):

复制代码
sudo yum remove -y docker docker-common docker-selinux docker-engine

2.2 安装必要的软件包:

复制代码
sudo yum install -y yum-utils device-mapper-persistent-data lvm2

2.3 添加 Docker CE 存储库:

复制代码
sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

2.4 安装 Docker CE:

复制代码
sudo yum install -y docker-ce

2.5 启动 Docker 服务:

复制代码
sudo systemctl start docker

2.6 设置 Docker 开机自启:

复制代码
sudo systemctl enable docker

3. 安装 NVIDIA Container Toolkit:

3.1 添加 NVIDIA Container Toolkit 存储库密钥:

复制代码
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.repo | sudo tee /etc/yum.repos.d/nvidia-docker.repo

安装过程:

bash 复制代码
[xxx]# distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
[xxx]# curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.repo | sudo tee /etc/yum.repos.d/nvidia-docker.repo
[libnvidia-container]
name=libnvidia-container
baseurl=https://nvidia.github.io/libnvidia-container/stable/centos7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://nvidia.github.io/libnvidia-container/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt

[libnvidia-container-experimental]
name=libnvidia-container-experimental
baseurl=https://nvidia.github.io/libnvidia-container/experimental/centos7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=0
gpgkey=https://nvidia.github.io/libnvidia-container/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt

[nvidia-container-runtime]
name=nvidia-container-runtime
baseurl=https://nvidia.github.io/nvidia-container-runtime/stable/centos7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://nvidia.github.io/nvidia-container-runtime/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt

[nvidia-container-runtime-experimental]
name=nvidia-container-runtime-experimental
baseurl=https://nvidia.github.io/nvidia-container-runtime/experimental/centos7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=0
gpgkey=https://nvidia.github.io/nvidia-container-runtime/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt

[nvidia-docker]
name=nvidia-docker
baseurl=https://nvidia.github.io/nvidia-docker/centos7/$basearch
repo_gpgcheck=1
gpgcheck=0
enabled=1
gpgkey=https://nvidia.github.io/nvidia-docker/gpgkey
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt

3.2 安装 NVIDIA Container Toolkit:

复制代码
sudo yum install -y nvidia-docker2

安装过程

bash 复制代码
[ xxx ]# yum install -y nvidia-docker2
Loaded plugins: fastestmirror, langpacks, nvidia
Loading mirror speeds from cached hostfile
epel/x86_64/metalink                                                                                                                         |  14 kB  00:00:00

base                                                                                                                                         | 3.6 kB  00:00:00
centos-sclo-rh                                                                                                                               | 3.0 kB  00:00:00
centos-sclo-sclo                                                                                                                             | 3.0 kB  00:00:00
cuda-rhel7-x86_64                                                                                                                            | 3.0 kB  00:00:00
docker-ce-stable                                                                                                                             | 3.5 kB  00:00:00
epel                                                                                                                                         | 4.7 kB  00:00:00
extras                                                                                                                                       | 2.9 kB  00:00:00
libnvidia-container/x86_64/signature                                                                                                         |  833 B  00:00:00
Retrieving key from https://nvidia.github.io/libnvidia-container/gpgkey
Importing GPG key 0xF796ECB0:
 Userid     : "NVIDIA CORPORATION (Open Source Projects) <cudatools@nvidia.com>"
 Fingerprint: c95b 321b 61e8 8c18 09c4 f759 ddca e044 f796 ecb0
 From       : https://nvidia.github.io/libnvidia-container/gpgkey
libnvidia-container/x86_64/signature                                                                                                         | 2.1 kB  00:00:00 !!!
nvidia-container-runtime/x86_64/signature                                                                                                    |  833 B  00:00:00
Retrieving key from https://nvidia.github.io/nvidia-container-runtime/gpgkey
Importing GPG key 0xF796ECB0:
 Userid     : "NVIDIA CORPORATION (Open Source Projects) <cudatools@nvidia.com>"
 Fingerprint: c95b 321b 61e8 8c18 09c4 f759 ddca e044 f796 ecb0
 From       : https://nvidia.github.io/nvidia-container-runtime/gpgkey
nvidia-container-runtime/x86_64/signature                                                                                                    | 2.1 kB  00:00:00 !!!
nvidia-docker/x86_64/signature                                                                                                               |  833 B  00:00:00
Retrieving key from https://nvidia.github.io/nvidia-docker/gpgkey
Importing GPG key 0xF796ECB0:
 Userid     : "NVIDIA CORPORATION (Open Source Projects) <cudatools@nvidia.com>"
 Fingerprint: c95b 321b 61e8 8c18 09c4 f759 ddca e044 f796 ecb0
 From       : https://nvidia.github.io/nvidia-docker/gpgkey
nvidia-docker/x86_64/signature                                                                                                               | 2.1 kB  00:00:00 !!!
updates                                                                                                                                      | 2.9 kB  00:00:00
(1/6): nvidia-docker/x86_64/primary                                                                                                          | 8.0 kB  00:00:01
(2/6): epel/x86_64/updateinfo                                                                                                                | 1.0 MB  00:00:01
(3/6): nvidia-container-runtime/x86_64/primary                                                                                               |  11 kB  00:00:01
(4/6): libnvidia-container/x86_64/primary                                                                                                    |  35 kB  00:00:01
(5/6): epel/x86_64/primary_db                                                                                                                | 7.0 MB  00:00:04
(6/6): updates/7/x86_64/primary_db                                                                                                           |  22 MB  00:00:10
libnvidia-container                                                                                                                                         231/231
nvidia-container-runtime                                                                                                                                      71/71
nvidia-docker                                                                                                                                                 54/54
Resolving Dependencies
--> Running transaction check
---> Package nvidia-docker2.noarch 0:2.13.0-1 will be installed
--> Processing Dependency: nvidia-container-toolkit >= 1.13.0-1 for package: nvidia-docker2-2.13.0-1.noarch
--> Running transaction check
---> Package nvidia-container-toolkit.x86_64 0:1.13.5-1 will be installed
--> Processing Dependency: nvidia-container-toolkit-base = 1.13.5-1 for package: nvidia-container-toolkit-1.13.5-1.x86_64
--> Processing Dependency: libnvidia-container-tools < 2.0.0 for package: nvidia-container-toolkit-1.13.5-1.x86_64
--> Processing Dependency: libnvidia-container-tools >= 1.13.5-1 for package: nvidia-container-toolkit-1.13.5-1.x86_64
--> Running transaction check
---> Package libnvidia-container-tools.x86_64 0:1.13.5-1 will be installed
--> Processing Dependency: libnvidia-container1(x86-64) >= 1.13.5-1 for package: libnvidia-container-tools-1.13.5-1.x86_64
--> Processing Dependency: libnvidia-container.so.1(NVC_1.0)(64bit) for package: libnvidia-container-tools-1.13.5-1.x86_64
--> Processing Dependency: libnvidia-container.so.1()(64bit) for package: libnvidia-container-tools-1.13.5-1.x86_64
---> Package nvidia-container-toolkit-base.x86_64 0:1.13.5-1 will be installed
--> Running transaction check
---> Package libnvidia-container1.x86_64 0:1.13.5-1 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

====================================================================================================================================================================
 Package                                             Arch                         Version                           Repository                                 Size
====================================================================================================================================================================
Installing:
 nvidia-docker2                                      noarch                       2.13.0-1                          libnvidia-container                       8.7 k
Installing for dependencies:
 libnvidia-container-tools                           x86_64                       1.13.5-1                          libnvidia-container                        52 k
 libnvidia-container1                                x86_64                       1.13.5-1                          libnvidia-container                       1.0 M
 nvidia-container-toolkit                            x86_64                       1.13.5-1                          libnvidia-container                       909 k
 nvidia-container-toolkit-base                       x86_64                       1.13.5-1                          libnvidia-container                       3.1 M

Transaction Summary
====================================================================================================================================================================
Install  1 Package (+4 Dependent packages)

Total download size: 5.1 M
Installed size: 15 M
Downloading packages:
(1/5): libnvidia-container-tools-1.13.5-1.x86_64.rpm                                                                                         |  52 kB  00:00:01
(2/5): libnvidia-container1-1.13.5-1.x86_64.rpm                                                                                              | 1.0 MB  00:00:01
(3/5): nvidia-container-toolkit-1.13.5-1.x86_64.rpm                                                                                          | 909 kB  00:00:01
(4/5): nvidia-docker2-2.13.0-1.noarch.rpm                                                                                                    | 8.7 kB  00:00:00
(5/5): nvidia-container-toolkit-base-1.13.5-1.x86_64.rpm                                                                                     | 3.1 MB  00:00:02
--------------------------------------------------------------------------------------------------------------------------------------------------------------------
Total                                                                                                                               1.1 MB/s | 5.1 MB  00:00:04
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : libnvidia-container1-1.13.5-1.x86_64                                                                                                             1/5
  Installing : libnvidia-container-tools-1.13.5-1.x86_64                                                                                                        2/5
  Installing : nvidia-container-toolkit-base-1.13.5-1.x86_64                                                                                                    3/5
  Installing : nvidia-container-toolkit-1.13.5-1.x86_64                                                                                                         4/5
  Installing : nvidia-docker2-2.13.0-1.noarch                                                                                                                   5/5
warning: /etc/docker/daemon.json saved as /etc/docker/daemon.json.rpmorig
  Verifying  : nvidia-container-toolkit-base-1.13.5-1.x86_64                                                                                                    1/5
  Verifying  : libnvidia-container-tools-1.13.5-1.x86_64                                                                                                        2/5
  Verifying  : nvidia-docker2-2.13.0-1.noarch                                                                                                                   3/5
  Verifying  : libnvidia-container1-1.13.5-1.x86_64                                                                                                             4/5
  Verifying  : nvidia-container-toolkit-1.13.5-1.x86_64                                                                                                         5/5

Installed:
  nvidia-docker2.noarch 0:2.13.0-1

Dependency Installed:
  libnvidia-container-tools.x86_64 0:1.13.5-1                libnvidia-container1.x86_64 0:1.13.5-1            nvidia-container-toolkit.x86_64 0:1.13.5-1
  nvidia-container-toolkit-base.x86_64 0:1.13.5-1

Complete!

4. 配置 Docker:

4.1 创建或编辑 Docker 配置文件 /etc/docker/daemon.json

复制代码
sudo nano /etc/docker/daemon.json

4.2 添加以下内容到文件中:

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

4.3 保存并关闭文件。

5. 重启 Docker 服务:

复制代码
sudo systemctl restart docker

完成上述步骤后,您的 CentOS 系统将具备 NVIDIA Container Toolkit 的安装和配置。您可以使用带有 GPU 功能的 Docker 容器,并确保容器正确地使用 GPU 资源。

请注意,上述步骤适用于 CentOS 7 及更高版本。如果您使用的是其他版本的 CentOS,请参考 NVIDIA Container Toolkit 官方文档中针对您的 CentOS 版本的安装和配置指南。

6. NVIDIA Container Toolkit 的官方文档链接:

https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/index.html

相关推荐
小毛驴85017 分钟前
所有微服务部署都使用一个git地址,并且通过docker部署各个服务的情况下,如何编写mvn指令来处理各个服务。
git·docker·微服务
软件测试很重要19 分钟前
UOS20系统安装与 SSH/XRDP 远程访问功能配置指南
linux·运维·ssh
GanGuaGua1 小时前
Linux系统:线程的互斥和安全
linux·运维·服务器·c语言·c++·安全
lsnm2 小时前
【LINUX网络】IP——网络层
linux·服务器·网络·c++·网络协议·tcp/ip
不掰手腕2 小时前
在UnionTech OS Server 20 (统信UOS服务器版) 上离线安装PostgreSQL (pgsql) 数据库
linux·数据库·postgresql
感哥2 小时前
Docker网络
docker
Lynnxiaowen2 小时前
今天继续昨天的正则表达式进行学习
linux·运维·学习·正则表达式·云计算·bash
努力学习的小廉3 小时前
深入了解linux系统—— POSIX信号量
linux·运维·服务器
刘一说3 小时前
CentOS部署ELK Stack完整指南
linux·elk·centos
从零开始的ops生活3 小时前
【Day 50 】Linux-nginx反向代理与负载均衡
linux·nginx