본문 바로가기

IT/리눅스

4 Rocky Linux Docker 설치(GPU 있을때/없을때) - Rocky Linux 설치 및 Nvidia Docker 환경 만들기(9)

반응형

4.1     docker 설치 (Nvidia GPU 불필요시)

 

yum install -y yum-utils

yum update

 

yum config-manager --add-repo=https://download.docker.com/linux/centos/docker-ce.repo

yum install -y docker-ce docker-ce-cli containerd.io

 

 

>docker --version

Docker version 23.0.1, build a5ee5b1

 

재부팅시 자동 기동 되도록 설정

>systemctl enable docker.service

서비스 시작

>systemctl start docker.service

상태 확인

>systemctl status docker.service

 

 

4.2     docker 설치 (Nvidia GPU 사용)

 

4.2.1  도커 버전 지정하여 설치하기

 

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

 

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

 

docs.nvidia.com

 

Nvidia-toolkit을 사용하려면 도커 버전을 무조건 최신으로 쓰면 안되고 Nividia runtime을 지원 하는 버전을 확인하여 설치해야 한다

 

 

여기서는 20.10 버전을 설치한다.

 

(1)기존 버전 삭제

>yum remove docker-ce*

 

 

(2)가능한 도커 버전 확인

>yum list docker-ce --showduplicates | sort -r

 

 

아래와 같은 방법으로 버전별 설치가 가능하다.

yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io

 

nvidia-toolkit 이 지원가능한 20.10.12 버전으로 재설치

>yum install docker-ce-20.10.12 docker-ce-cli-20.10.12 containerd.io

 

 

변경된 버전 확인 

 

 

 

반응형

 

 

4.2.2  Nvidia container toolkit 설치

 

Nvidia GPU를 사용할 수 있는 컨테이너를 생성하기 위해서는 nvidia-container-toolkit 을 설치해야 한다.

 

(1)Repo 등록

여기서는 rocky8.7에 설치 중이므로 rhel8.7로 입력한다.

>curl -s -L https://nvidia.github.io/nvidia-docker/rhel8.7/nvidia-docker.repo | sudo tee /etc/yum.repos.d/nvidia-docker.repo

>yum clean expire-cache

>yum update -y

 

(2)Nvidia Toolkit 설치

>yum -y install nvidia-container-toolkit

>yum install -y nvidia-docker2

 

 

(3)Docker 데몬 재시작

>systemctl restart docker.service

 

 

4.3     Docker daemon 설정 하기

 

4.3.1  이미지/컨테이너 저장 위치 변경

 

도커는 기본적으로 설치하면 /var/lib/docker로 기본 패스가 설정되어 docker 이미지나 컨테이너 생성시 해당 위치를 사용하게 된다.

하지만 일반적으로 /var가 속한 파티션은 크기가 크지 않아 많은 도커를 운용할 때 디스크 용량 문제에 부딛히게 된다.

 

여기서는 /home/docker 패스에 1T SSD를 마운트 하여 도커 전용으로 사용하기 위해 /var/lib/docker기본 패스를 변경하여 /home/docker/docker_data에서 이미지와 컨테이너 데이터를 관리하도록 변경한다

 

>mkdir -p /home/docker/docker_data

>vi /etc/docker/daemon.json

파일 수정 (없으면 생성)

 

[root@localhost docker]# vi daemon.json

{

    "graph":"/home/docker/docker_data",

 

    "runtimes": {

        "nvidia": {

            "path": "nvidia-container-runtime",

            "runtimeArgs": []

        }

    }

}

 

변경 내용 적용 및 확인

 

> systemctl stop docker.service

> systemctl start docker.service

> docker info

 

 

 

 

반응형