Ubuntu 22.04 LTS의 Docker 컨테이너에서 NVIDIA GPU를 사용하는 방법

Ubuntu 22 04 Ltsui Docker Keonteineoeseo Nvidia Gpuleul Sayonghaneun Bangbeob



Docker 컨테이너에서 NVIDIA GPU를 통과하고 이러한 Docker 컨테이너의 NVIDIA GPU에서 CUDA 프로그램을 실행할 수 있습니다. AI(인공지능) 학습에 매우 유용한 기능입니다. Docker 컨테이너에서 AI 코드(예: Tensorflow)를 실행할 수 있으면 많은 시간을 절약할 수 있습니다. 컴퓨터에서 CUDA 버전을 변경할 필요 없이 다른 CUDA 버전에서 AI 코드를 시험해 볼 수도 있습니다.

컴퓨터에서 NVIDIA 드라이버 및 CUDA 버전을 만지작거리면 NVIDIA 드라이버가 작동하지 않거나 검은색/파란색 사망 화면이 표시되는 등의 문제가 발생할 수 있습니다. 따라서 항상 시스템을 그대로 두고 Docker 컨테이너와 같은 격리된 환경에서 변경하는 것이 좋습니다. 이렇게 하면 메인 컴퓨터를 (불필요한 개발 도구로부터) 깨끗하게 유지할 수 있습니다.







이 기사에서는 Docker 컨테이너에서 컴퓨터의 NVIDIA GPU에 액세스하고 NVIDIA GPU에서 CUDA 프로그램을 실행할 수 있도록 Ubuntu 22.04 LTS에서 Docker CE 및 NVIDIA docker를 설정하는 방법을 보여 드리겠습니다.



목차:

  1. 공식 NVIDIA GPU 드라이버가 Ubuntu 22.04에 설치되어 있는지 확인
  2. Ubuntu 22.04에 Docker CE 종속성 설치
  3. Ubuntu 22.04에 Docker CE GPG 키 설치
  4. Ubuntu 22.04에 Docker CE 리포지토리 설치
  5. Ubuntu 22.04에 Docker CE 설치
  6. docker 그룹에 Ubuntu 22.04 LTS 로그인 사용자 추가
  7. Docker CE가 Ubuntu 22.04에 올바르게 설치되었는지 확인
  8. Ubuntu 22.04에 NVIDIA Container Toolkit GPG 키 설치
  9. Ubuntu 22.04에 NVIDIA Container Toolkit 리포지토리 설치
  10. Ubuntu 22.04에 nvidia-docker 드라이버 설치
  11. Ubuntu 22.04의 Docker 컨테이너에서 NVIDIA GPU에 액세스할 수 있는지 확인
  12. 결론
  13. 참조

공식 NVIDIA GPU 드라이버가 Ubuntu 22.04 LTS에 설치되어 있는지 확인:

시작하기 전에 다음 명령을 실행하여 컴퓨터에 NVIDIA GPU가 설치되어 있는지 확인하십시오.



$ lspci | egrep -나 'vga|3d|디스플레이'





이 경우 컴퓨터에 NVIDIA GTX 1050 Ti GPU가 설치되어 있습니다. 컴퓨터에 다른 NVIDIA GPU가 설치되어 있을 가능성이 큽니다.


또한 다음 명령을 사용하여 Ubuntu 22.04 운영 체제에 공식 NVIDIA 드라이버가 설치되어 있는지 확인하십시오.



$ lsmod | 꽉 붙잡음 엔비디아

공식 NVIDIA 드라이버가 Ubuntu 22.04 운영 체제에 설치된 경우 다음 출력이 표시됩니다.


또한 공식 NVIDIA GPU 드라이버가 다음 명령으로 작동하는지 확인하십시오.

$ nvidia-smi

공식 NVIDIA GPU 드라이버가 작동하는 경우 다음 출력이 표시됩니다. 보시다시피 Ubuntu 22.04 시스템에 공식 NVIDIA GPU 드라이버 버전 525.78.01이 설치되어 있습니다.


Ubuntu 22.04 시스템에 공식 NVIDIA GPU 드라이버가 설치되어 있지 않고 이에 대한 도움이 필요한 경우 문서를 확인하십시오. .

Ubuntu 22.04 LTS에 Docker CE 종속성 설치:

Ubuntu 22.04에 Docker CE를 설치하려면 Ubuntu 22.04에 필요한 Docker CE 종속성 패키지를 설치해야 합니다.

먼저 다음 명령을 사용하여 APT 패키지 리포지토리 캐시를 업데이트합니다.

$ 스도 적절한 업데이트

APT 패키지 리포지토리 캐시를 업데이트해야 합니다.


Docker CE의 필수 종속성 패키지를 설치하려면 다음 명령을 실행하십시오.

$ 스도 적절한 설치 설치 ca 인증서 curl gnupg lsb-release

설치를 확인하려면 그리고 그런 다음 <입력> .


필요한 Docker CE 종속성 패키지를 설치해야 합니다.

Ubuntu 22.04 LTS에 Docker CE GPG 키 설치:

이 섹션에서는 Ubuntu 22.04에 Docker CE 패키지 리포지토리의 GPG 키를 설치하는 방법을 보여 드리겠습니다.

먼저 새 폴더를 만듭니다. /etc/apt/keyrings 다음 명령으로:

$ 스도 mkdir -피 / / 적절한 / 열쇠 고리

Ubuntu 22.04에 Docker CE 패키지 리포지토리의 GPG 키를 설치하려면 다음 명령을 실행합니다.

$ 곱슬 곱슬하다 -fsSL https: // download.docker.com / 리눅스 / 우분투 / gpg | 스도 gpg --dearmor -영형 / / 적절한 / 열쇠 고리 / docker.gpg

Ubuntu 22.04 LTS에 Docker CE 리포지토리 설치:

Ubuntu 22.04에 Docker CE 패키지 리포지토리를 설치하려면 다음 명령을 실행합니다.

$ 에코 '뎁 [아치= $(dpkg --인쇄-아키텍처) 서명자=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) 안정적인' | 스도 / / 적절한 / 출처.목록.d / 도커 목록 > / 개발자 / 없는

변경 사항을 적용하려면 APT 패키지 저장소 캐시를 업데이트하십시오.

$ 스도 적절한 업데이트


Ubuntu 22.04 LTS에 Docker CE 설치:

최신 버전의 Docker CE를 Ubuntu 22.04에 설치하려면 다음 명령을 실행하십시오.

$ 스도 적절한 설치 설치 docker-ce docker-ce-cli containerd.io docker-compose-plugin

설치를 확인하려면 그리고 그런 다음 <입력> .


Docker CE 및 필수 종속성 패키지를 다운로드 중입니다. 완료하는 데 시간이 걸립니다.


Docker CE 및 필요한 종속성 패키지가 설치되고 있습니다. 완료하는 데 시간이 걸립니다.


이 시점에서 Docker CE 및 필수 종속성 패키지를 설치해야 합니다.

docker 그룹에 Ubuntu 22.04 LTS 로그인 사용자 추가:

sudo를 사용하거나 루트 사용자로 로그인하지 않고 Docker 컨테이너를 만들고 관리하려면 로그인 사용자를 도커 그룹.

Ubuntu 22.04의 로그인 사용자를 도커 그룹에서 다음 명령을 실행합니다.

$ 스도 사용자 모드 -aG 도커 $ ( 와미 )

변경 사항을 적용하려면 다음 명령을 사용하여 컴퓨터를 다시 시작하십시오.

$ 스도 재부팅

Docker CE가 Ubuntu 22.04 LTS에 올바르게 설치되었는지 확인:

컴퓨터가 시작되면 다음 명령을 실행하여 수퍼유저 권한 없이 Docker에 액세스할 수 있는지 확인합니다.

$ 도커 버전

모든 것이 작동하면 다음 출력이 표시되어야 합니다.

보시다시피 저는 이 글을 쓰는 시점에 Docker CE의 최신 버전인 Docker 버전 20.10.23을 실행하고 있습니다.

Ubuntu 22.04에 NVIDIA Container Toolkit GPG 키 설치:

이 섹션에서는 Ubuntu 22.04에 NVIDIA Container Toolkit 패키지 리포지토리의 GPG 키를 설치하는 방법을 보여드리겠습니다.

Ubuntu 22.04에 NVIDIA Container Toolkit 패키지 리포지토리의 GPG 키를 설치하려면 다음 명령을 실행합니다.

$ 곱슬 곱슬하다 -fsSL https: // nvidia.github.io / libnvidia 컨테이너 / gpgkey | 스도 gpg --dearmor -영형 / usr / 공유하다 / 열쇠 고리 / nvidia-container-toolkit-keyring.gpg

Ubuntu 22.04 LTS에 NVIDIA Container Toolkit 저장소 설치:

이 섹션에서는 Ubuntu 22.04에 NVIDIA Container Toolkit 패키지 리포지토리를 설치하는 방법을 보여드리겠습니다.

먼저 새 APT 소스 파일을 만듭니다. nvidia-container-toolkit.list 에서 /etc/apt/sources.list.d/ 다음과 같은 디렉토리:

$ 스도 나노 / / 적절한 / 출처.목록.d / nvidia-container-toolkit.list

에서 nvidia-container-toolkit.list 파일에 다음 줄을 추가하고 누릅니다. <컨트롤> + 엑스 다음에 그리고 그리고 <입력> 파일을 저장합니다.

저것 [ 서명자= / usr / 공유하다 / 열쇠 고리 / nvidia-container-toolkit-keyring.gpg ] https: // nvidia.github.io / libnvidia 컨테이너 / 안정적인 / 무료22.04 / $ ( 아치 ) /



Ubuntu 20.04 LTS를 사용하는 경우 다음 줄을 추가하기만 하면 됩니다. nvidia-container-toolkit.list 파일 대신 다른 모든 항목은 변경되지 않은 상태로 작동해야 합니다.

저것 [ 서명자= / usr / 공유하다 / 열쇠 고리 / nvidia-container-toolkit-keyring.gpg ] https: // nvidia.github.io / libnvidia 컨테이너 / 안정적인 / 무료20.04 / $ ( 아치 ) /


Ubuntu 18.04 LTS를 사용하는 경우 다음 줄을 추가하기만 하면 됩니다. nvidia-container-toolkit.list 파일 대신 다른 모든 항목은 변경되지 않은 상태로 작동해야 합니다.

저것 [ 서명자= / usr / 공유하다 / 열쇠 고리 / nvidia-container-toolkit-keyring.gpg ] https: // nvidia.github.io / libnvidia 컨테이너 / 안정적인 / 무료18.04 / $ ( 아치 ) /


변경 사항을 적용하려면 다음 명령을 사용하여 APT 패키지 저장소 캐시를 업데이트하십시오.

$ 스도 적절한 업데이트


Ubuntu 22.04 LTS에 nvidia-docker 드라이버 설치:

Ubuntu 22.04에 NVIDIA Docker 드라이버를 설치하려면 다음 명령을 실행합니다.

$ 스도 적절한 설치하다 엔비디아-도커2

설치를 확인하려면 그리고 그런 다음 <입력> .


NVIDIA 도커 드라이버가 설치되어 있어야 합니다.


변경 사항을 적용하려면 다음 명령을 사용하여 컴퓨터를 다시 시작하십시오.

$ 스도 재부팅

Ubuntu 22.04 LTS의 Docker 컨테이너에서 NVIDIA GPU에 액세스할 수 있는지 확인:

이 섹션에서는 NVIDIA CUDA 도커 컨테이너 컨테이너가 컴퓨터에서 NVIDIA GPU에 액세스할 수 있는지 확인합니다.

Ubuntu 20.04 LTS를 기반으로 NVIDIA CUDA 12 Docker 컨테이너를 만들고 다음을 실행하려면 nvidia-smi 컴퓨터에서 NVIDIA GPU에 액세스할 수 있는지 확인하기 위해 생성되면 다음 명령을 실행하십시오.

$ 도커 실행 --rm --gpus 모든 엔비디아 / cuda:12.0.0-base-ubuntu20.04 nvidia-smi

도커가 당기는 nvidia/cuda:12.0.0-base-ubuntu20.04 Docker 허브의 이미지. 완료하는 데 시간이 걸립니다.


NVIDIA CUDA 도커 이미지를 가져오고 컨테이너가 생성되면 nvidia-smi 아래 스크린샷에서 볼 수 있듯이 명령이 실행되고 콘솔에 출력이 인쇄됩니다.

Docker 컨테이너는 다음을 사용하고 있습니다. NVIDIA GPU 드라이버 525.78.01 [1] 그리고 쿠다 버전 12.0 [2] . 유사한 출력이 표시되면 Docker 컨테이너가 컴퓨터의 NVIDIA GPU에 액세스할 수 있습니다.


이전 버전의 CUDA를 사용해야 하는 경우 다음을 확인하십시오. .

결론:

이 기사에서는 Ubuntu 22.04에서 Docker CE 패키지 리포지토리를 설정하는 방법을 설명했습니다. Ubuntu 22.04에 최신 버전의 Docker CE를 설치하는 방법도 보여 드렸습니다. Ubuntu 22.04에 NVIDIA Container Toolkit 패키지 리포지토리를 설치하는 방법과 Ubuntu 22.04에 NVIDIA Docker 드라이버를 설치하는 방법을 보여 드렸습니다. 마지막으로 Docker 컨테이너에서 컴퓨터의 NVIDIA GPU에 액세스하는 방법을 보여 드렸습니다.

참조: