CentOS는 NVIDIA docker Container Toolkit을 신속하게 설치하고 구성합니다.

CentOS에서 NVIDIA Container Toolkit을 올바르게 설치 및 구성하려면 아래 단계를 따르십시오. 1과 2가 완료되면 NVIDIA Container Toolkit 설치 및 구성의 3단계로 바로 진행할 수 있습니다.

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. 도커 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 도커 CE 설치:

sudo yum install -y docker-ce

2.5 Docker 서비스를 시작합니다.

sudo systemctl start docker

2.6 부팅 시 Docker가 자동으로 시작되도록 설정합니다.

sudo systemctl enable docker

3. NVIDIA 컨테이너 툴킷을 설치합니다:

3.1 NVIDIA 컨테이너 툴킷 저장소 키 추가:

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

설치 과정:

[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 컨테이너 툴킷 설치:

sudo yum install -y nvidia-docker2

설치 과정

[ 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) <[email protected]>"
 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) <[email protected]>"
 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) <[email protected]>"
 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. 도커 구성:

4.1 Docker 구성 파일 /etc/docker/daemon.json 생성 또는 편집

sudo nano /etc/docker/daemon.json

4.2 파일에 다음 내용을 추가합니다.

{
    
    
  "default-runtime": "nvidia",
  "runtimes": {
    
    
    "nvidia": {
    
    
      "path": "nvidia-container-runtime",
      "runtimeArgs": []
    }
  }
}

4.3 파일을 저장하고 닫습니다.

5. Docker 서비스를 다시 시작합니다.

sudo systemctl restart docker

위 단계를 완료하면 CentOS 시스템에 NVIDIA 컨테이너 툴킷이 설치 및 구성됩니다. GPU 지원 Docker 컨테이너를 사용하고 컨테이너가 GPU 리소스를 올바르게 사용하는지 확인할 수 있습니다.

위 단계는 CentOS 7 이상에 적용 가능합니다. 다른 버전의 CentOS를 사용하는 경우 공식 NVIDIA Container Toolkit 문서에서 해당 CentOS 버전의 설치 및 구성 가이드를 참조하세요.

6. NVIDIA 컨테이너 툴킷의 공식 문서 링크:

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

Guess you like

Origin blog.csdn.net/holyvslin/article/details/132314959