Slik bruker du NVIDIA GPU i Docker-beholdere på Ubuntu 22.04 LTS

Slik Bruker Du Nvidia Gpu I Docker Beholdere Pa Ubuntu 22 04 Lts



Du kan overføre NVIDIA GPU i Docker-beholdere og kjøre CUDA-programmer på NVIDIA GPU fra disse Docker-beholderne. Dette er en veldig nyttig funksjon for å lære AI (Artificial Intelligence). Å kunne kjøre AI-koder (dvs. Tensorflow) på Docker-containere vil spare deg for mye tid. Du kan også prøve ut AI-kodene dine på forskjellige CUDA-versjoner uten å måtte endre CUDA-versjonen på datamaskinen.

Å fikle med NVIDIA-drivere og CUDA-versjoner på datamaskinen din kan føre til problemer som at NVIDIA-driverne ikke fungerer eller etterlate deg med en svart/blå skjerm. Så det er alltid en god idé å la systemet være som det er og gjøre endringer i et isolert miljø som Docker-containere. Dette holder hoveddatamaskinen ren (for unødvendige utviklingsverktøy).







I denne artikkelen skal jeg vise deg hvordan du setter opp Docker CE og NVIDIA docker på Ubuntu 22.04 LTS slik at du kan få tilgang til NVIDIA GPU på datamaskinen fra Docker-beholdere og kjøre CUDA-programmer på NVIDIA GPU.



Innholdsfortegnelse:

  1. Sjekker om de offisielle NVIDIA GPU-driverne er installert på Ubuntu 22.04
  2. Installere Docker CE Dependencies på Ubuntu 22.04
  3. Installere Docker CE GPG Keys på Ubuntu 22.04
  4. Installere Docker CE Repository på Ubuntu 22.04
  5. Installere Docker CE på Ubuntu 22.04
  6. Legge til Ubuntu 22.04 LTS-påloggingsbrukeren til docker-gruppen
  7. Sjekker om Docker CE ble installert riktig på Ubuntu 22.04
  8. Installere NVIDIA Container Toolkit GPG Keys på Ubuntu 22.04
  9. Installere NVIDIA Container Toolkit Repository på Ubuntu 22.04
  10. Installere nvidia-docker-drivere på Ubuntu 22.04
  11. Sjekker om NVIDIA GPU er tilgjengelig fra Docker-beholdere i Ubuntu 22.04
  12. Konklusjon
  13. Referanser

Sjekker om de offisielle NVIDIA GPU-driverne er installert på Ubuntu 22.04 LTS:

Før du begynner, kjør følgende kommando for å bekrefte at du har en NVIDIA GPU installert på datamaskinen.



$ lspci | egrep -Jeg 'vga|3d|skjerm'





I dette tilfellet har jeg NVIDIA GTX 1050 Ti GPU installert på datamaskinen min. Du vil mest sannsynlig ha en annen NVIDIA GPU installert på datamaskinen din.


Sørg også for at du har de offisielle NVIDIA-driverne installert på ditt Ubuntu 22.04-operativsystem med følgende kommando:



$ lsmod | grep nvidia

Hvis de offisielle NVIDIA-driverne er installert på ditt Ubuntu 22.04-operativsystem, vil du se følgende utganger.


Sjekk også om de offisielle NVIDIA GPU-driverne fungerer med følgende kommando:

$ nvidia-smi

Hvis de offisielle NVIDIA GPU-driverne fungerer, vil du se følgende utganger. Som du kan se, har jeg den offisielle NVIDIA GPU-driverversjonen 525.78.01 installert på min Ubuntu 22.04-maskin.


Hvis du ikke har de offisielle NVIDIA GPU-driverne installert på din Ubuntu 22.04-maskin og du trenger hjelp med det, vennligst sjekk artikkelen .

Installere Docker CE Dependencies på Ubuntu 22.04 LTS:

Før du kan installere Docker CE på Ubuntu 22.04, må du installere de nødvendige Docker CE-avhengighetspakkene på Ubuntu 22.04.

Først oppdaterer du APT-pakkelageret med følgende kommando:

$ sudo passende oppdatering

APT-pakkelageret bør oppdateres.


For å installere de nødvendige avhengighetspakkene til Docker CE, kjør følgende kommando:

$ sudo apt-get install ca-sertifikater curl gnupg lsb-utgivelse

For å bekrefte installasjonen, trykk OG og trykk deretter .


De nødvendige Docker CE-avhengighetspakkene bør installeres.

Installere Docker CE GPG Keys på Ubuntu 22.04 LTS:

I denne delen skal jeg vise deg hvordan du installerer GPG-nøkkelen til Docker CE-pakkelageret på Ubuntu 22.04.

Først oppretter du en ny mappe /etc/apt/nøkkelringer med følgende kommando:

$ sudo mkdir -s / etc / apt / nøkkelringer

For å installere GPG-nøkkelen til Docker CE-pakkelageret på Ubuntu 22.04, kjør følgende kommando:

$ krølle -fsSL https: // download.docker.com / linux / ubuntu / gpg | sudo gpg --kjære -O / etc / apt / nøkkelringer / docker.gpg

Installere Docker CE Repository på Ubuntu 22.04 LTS:

For å installere Docker CE-pakkelageret på Ubuntu 22.04, kjør følgende kommando:

$ ekko 'deb [arch= $(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stabil' | sudo tee / etc / apt / sources.list.d / docker.list > / dev / null

Oppdater APT-pakkelageret for at endringene skal tre i kraft.

$ sudo passende oppdatering


Installere Docker CE på Ubuntu 22.04 LTS:

For å installere den nyeste versjonen av Docker CE på Ubuntu 22.04, kjør følgende kommando:

$ sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin

For å bekrefte installasjonen, trykk OG og trykk deretter .


Docker CE og de nødvendige avhengighetspakkene blir lastet ned. Det vil ta en stund å fullføre.


Docker CE og de nødvendige avhengighetspakkene blir installert. Det vil ta en stund å fullføre.


Docker CE og de nødvendige avhengighetspakkene bør installeres på dette tidspunktet.

Legge til Ubuntu 22.04 LTS-påloggingsbrukeren til docker-gruppen:

For å lage Docker-beholdere og administrere dem uten å bruke sudo eller logget på som root-bruker, må du legge til påloggingsbrukeren til havnearbeider gruppe.

For å legge til påloggingsbrukeren til Ubuntu 22.04 til havnearbeider gruppe, kjør følgende kommando:

$ sudo brukermod -aG docker $ ( hvem er jeg )

For at endringene skal tre i kraft, start datamaskinen på nytt med følgende kommando:

$ sudo starte på nytt

Sjekke om Docker CE ble installert riktig på Ubuntu 22.04 LTS:

Når datamaskinen starter, kjør følgende kommando for å bekrefte at du har tilgang til Docker uten superbrukerrettigheter.

$ docker-versjon

Hvis alt fungerer, bør du se følgende utganger.

Som du kan se, kjører jeg Docker versjon 20.10.23 – den siste versjonen av Docker CE i skrivende stund.

Installere NVIDIA Container Toolkit GPG Keys på Ubuntu 22.04:

I denne delen skal jeg vise deg hvordan du installerer GPG-nøkkelen til NVIDIA Container Toolkit-pakkelageret på Ubuntu 22.04.

For å installere GPG-nøkkelen til NVIDIA Container Toolkit-pakkelageret på Ubuntu 22.04, kjør følgende kommando:

$ krølle -fsSL https: // nvidia.github.io / libnvidia-beholder / gpg-tast | sudo gpg --kjære -O / usr / dele / nøkkelringer / nvidia-container-toolkit-keyring.gpg

Installere NVIDIA Container Toolkit Repository på Ubuntu 22.04 LTS:

I denne delen skal jeg vise deg hvordan du installerer NVIDIA Container Toolkit-pakkelageret på Ubuntu 22.04.

Først oppretter du en ny APT-kildefil nvidia-container-toolkit.list i /etc/apt/sources.list.d/ katalog som følger:

$ sudo nano / etc / apt / sources.list.d / nvidia-container-toolkit.list

I nvidia-container-toolkit.list fil, legg til følgende linje og trykk + X etterfulgt av OG og for å lagre filen.

at [ signert av= / usr / dele / nøkkelringer / nvidia-container-toolkit-keyring.gpg ] https: // nvidia.github.io / libnvidia-beholder / stabil / gratis 22.04 / $ ( ARCH ) /



Hvis du bruker Ubuntu 20.04 LTS, er alt du trenger å gjøre å legge til følgende linje i nvidia-container-toolkit.list fil i stedet, og alt annet skal fungere uendret.

at [ signert av= / usr / dele / nøkkelringer / nvidia-container-toolkit-keyring.gpg ] https: // nvidia.github.io / libnvidia-beholder / stabil / gratis 20.04 / $ ( ARCH ) /


Hvis du bruker Ubuntu 18.04 LTS, er alt du trenger å gjøre å legge til følgende linje i nvidia-container-toolkit.list fil i stedet, og alt annet skal fungere uendret.

at [ signert av= / usr / dele / nøkkelringer / nvidia-container-toolkit-keyring.gpg ] https: // nvidia.github.io / libnvidia-beholder / stabil / gratis 18.04 / $ ( ARCH ) /


For at endringene skal tre i kraft, oppdater APT-pakkelageret med følgende kommando:

$ sudo passende oppdatering


Installere nvidia-docker-drivere på Ubuntu 22.04 LTS:

For å installere NVIDIA Docker-driverne på Ubuntu 22.04, kjør følgende kommando:

$ sudo apt installere nvidia-docker2

For å bekrefte installasjonen, trykk OG og trykk deretter .


NVIDIA docker-drivere bør være installert.


For at endringene skal tre i kraft, start datamaskinen på nytt med følgende kommando:

$ sudo starte på nytt

Sjekker om NVIDIA GPU er tilgjengelig fra Docker-beholdere i Ubuntu 22.04 LTS:

I denne delen skal jeg vise deg hvordan du lager en NVIDIA CUDA Docker-beholder og kontroller at beholderen har tilgang til NVIDIA GPU fra datamaskinen.

For å lage en NVIDIA CUDA 12 Docker-beholder basert på Ubuntu 20.04 LTS og kjøre nvidia-smi kommando i den når den er opprettet for å bekrefte om den kan få tilgang til NVIDIA GPU fra datamaskinen din, kjør følgende kommando:

$ docker run --rm --gpus alt nvidia / cuda:12.0.0-base-ubuntu20.04 nvidia-smi

Docker trekker nvidia/cuda:12.0.0-base-ubuntu20.04 bilde fra Docker Hub. Det vil ta en stund å fullføre.


Når NVIDIA CUDA docker-bildet er trukket og en beholder er opprettet, vil den nvidia-smi kommandoen vil kjøre på den og skrive ut utdataene på konsollen som du kan se på skjermbildet nedenfor.

Docker-beholderen bruker NVIDIA GPU-driver 525.78.01 [1] og CUDA versjon 12.0 [2] . Hvis du ser lignende utganger, kan Docker-beholderen få tilgang til NVIDIA GPU på datamaskinen din.


Hvis du trenger å bruke eldre versjoner av CUDA, sjekk .

Konklusjon:

I denne artikkelen har jeg vist deg hvordan du setter opp Docker CE-pakkelageret på Ubuntu 22.04. Jeg har også vist deg hvordan du installerer den nyeste versjonen av Docker CE på Ubuntu 22.04. Jeg har vist deg hvordan du installerer NVIDIA Container Toolkit-pakkelageret på Ubuntu 22.04, samt hvordan du installerer NVIDIA Docker-driveren på Ubuntu 22.04. Til slutt har jeg vist deg hvordan du får tilgang til NVIDIA GPU på datamaskinen din fra en Docker-beholder.

Referanser: