Sådan bruges NVIDIA GPU'en i Docker-containere på Ubuntu 22.04 LTS

Sadan Bruges Nvidia Gpu En I Docker Containere Pa Ubuntu 22 04 Lts



Du kan overføre din NVIDIA GPU i Docker-containere og køre CUDA-programmer på din NVIDIA GPU fra disse Docker-containere. Dette er en meget nyttig funktion til at lære AI (Artificial Intelligence). At kunne køre AI-koder (dvs. Tensorflow) på Docker-containere vil spare dig for en masse tid. Du kan også prøve dine AI-koder på forskellige CUDA-versioner uden at skulle ændre CUDA-versionen på din computer.

Fifler med NVIDIA-drivere og CUDA-versioner på din computer kan forårsage problemer som at NVIDIA-driverne ikke virker eller efterlade dig med en sort/blå skærm. Så det er altid en god idé at lade dit system være, som det er, og foretage ændringer i et isoleret miljø som Docker-containere. Dette holder din hovedcomputer ren (for unødvendige udviklingsværktøjer).







I denne artikel vil jeg vise dig, hvordan du opsætter Docker CE og NVIDIA docker på Ubuntu 22.04 LTS, så du kan få adgang til NVIDIA GPU'en på din computer fra Docker-containere og køre CUDA-programmer på din NVIDIA GPU.



Indholdsfortegnelse:

  1. Kontrollerer, om de officielle NVIDIA GPU-drivere er installeret på Ubuntu 22.04
  2. Installation af Docker CE Dependencies på Ubuntu 22.04
  3. Installation af Docker CE GPG-nøgler på Ubuntu 22.04
  4. Installation af Docker CE Repository på Ubuntu 22.04
  5. Installation af Docker CE på Ubuntu 22.04
  6. Tilføjelse af Ubuntu 22.04 LTS-loginbrugeren til docker-gruppen
  7. Kontrollerer, om Docker CE blev installeret korrekt på Ubuntu 22.04
  8. Installation af NVIDIA Container Toolkit GPG Keys på Ubuntu 22.04
  9. Installation af NVIDIA Container Toolkit Repository på Ubuntu 22.04
  10. Installation af nvidia-docker-drivere på Ubuntu 22.04
  11. Kontrollerer, om NVIDIA GPU er tilgængelig fra Docker-containere i Ubuntu 22.04
  12. Konklusion
  13. Referencer

Kontrollerer, om de officielle NVIDIA GPU-drivere er installeret på Ubuntu 22.04 LTS:

Før du går i gang, skal du køre følgende kommando for at bekræfte, at du har en NVIDIA GPU installeret på din computer.



$ lspci | egrep -jeg 'vga|3d|skærm'





I dette tilfælde har jeg NVIDIA GTX 1050 Ti GPU installeret på min computer. Du vil højst sandsynligt have en anden NVIDIA GPU installeret på din computer.


Sørg også for, at du har de officielle NVIDIA-drivere installeret på dit Ubuntu 22.04-operativsystem med følgende kommando:



$ lsmod | greb nvidia

Hvis de officielle NVIDIA-drivere er installeret på dit Ubuntu 22.04-operativsystem, vil du se følgende output.


Tjek også, om de officielle NVIDIA GPU-drivere fungerer med følgende kommando:

$ nvidia-smi

Hvis de officielle NVIDIA GPU-drivere virker, vil du se følgende udgange. Som du kan se, har jeg den officielle NVIDIA GPU-driverversion 525.78.01 installeret på min Ubuntu 22.04-maskine.


Hvis du ikke har de officielle NVIDIA GPU-drivere installeret på din Ubuntu 22.04-maskine, og du har brug for hjælp til det, så tjek artiklen .

Installation af Docker CE Dependencies på Ubuntu 22.04 LTS:

Før du kan installere Docker CE på Ubuntu 22.04, skal du installere de nødvendige Docker CE-afhængighedspakker på Ubuntu 22.04.

Først skal du opdatere APT-pakkelagerets cache med følgende kommando:

$ sudo passende opdatering

APT-pakkelagerets cache bør opdateres.


For at installere de nødvendige afhængighedspakker af Docker CE skal du køre følgende kommando:

$ sudo apt-get install ca-certifikater curl gnupg lsb-udgivelse

Tryk på for at bekræfte installationen OG og tryk derefter på .


De nødvendige Docker CE-afhængighedspakker skal installeres.

Installation af Docker CE GPG-nøgler på Ubuntu 22.04 LTS:

I dette afsnit vil jeg vise dig, hvordan du installerer GPG-nøglen til Docker CE-pakkelageret på Ubuntu 22.04.

Først skal du oprette en ny mappe /etc/apt/nøgleringe med følgende kommando:

$ sudo mkdir -s / etc / passende / nøgleringe

For at installere GPG-nøglen til Docker CE-pakkelageret på Ubuntu 22.04 skal du køre følgende kommando:

$ krølle -fsSL https: // download.docker.com / linux / ubuntu / gpg | sudo gpg -- kære -O / etc / passende / nøgleringe / docker.gpg

Installation af Docker CE Repository på Ubuntu 22.04 LTS:

For at installere Docker CE-pakkelageret på Ubuntu 22.04 skal du køre følgende kommando:

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

Opdater APT-pakkelagerets cache, så ændringerne træder i kraft.

$ sudo passende opdatering


Installation af Docker CE på Ubuntu 22.04 LTS:

For at installere den seneste version af Docker CE på Ubuntu 22.04 skal du køre følgende kommando:

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

Tryk på for at bekræfte installationen OG og tryk derefter på .


Docker CE og de nødvendige afhængighedspakker downloades. Det vil tage et stykke tid at fuldføre.


Docker CE og de nødvendige afhængighedspakker er ved at blive installeret. Det vil tage et stykke tid at fuldføre.


Docker CE og de nødvendige afhængighedspakker skal installeres på dette tidspunkt.

Tilføjelse af Ubuntu 22.04 LTS Login-brugeren til docker-gruppen:

For at oprette Docker-containere og administrere dem uden at bruge sudo eller logget ind som root-bruger, skal du tilføje din login-bruger til havnearbejder gruppe.

For at tilføje login-brugeren til din Ubuntu 22.04 til havnearbejder gruppe skal du køre følgende kommando:

$ sudo brugermod -aG havnearbejder $ ( hvem er jeg )

For at ændringerne træder i kraft, skal du genstarte din computer med følgende kommando:

$ sudo genstart

Kontrollerer, om Docker CE blev installeret korrekt på Ubuntu 22.04 LTS:

Når din computer starter, skal du køre følgende kommando for at bekræfte, at du kan få adgang til Docker uden superbrugerrettigheder.

$ docker version

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

Som du kan se, kører jeg Docker version 20.10.23 – den seneste version af Docker CE i skrivende stund.

Installation af NVIDIA Container Toolkit GPG Keys på Ubuntu 22.04:

I dette afsnit vil jeg vise dig, hvordan du installerer GPG-nøglen til NVIDIA Container Toolkit-pakkelageret på Ubuntu 22.04.

For at installere GPG-nøglen til NVIDIA Container Toolkit-pakkelageret på Ubuntu 22.04 skal du køre følgende kommando:

$ krølle -fsSL https: // nvidia.github.io / libnvidia-container / gpg-tast | sudo gpg -- kære -O / usr / del / nøgleringe / nvidia-container-toolkit-keyring.gpg

Installation af NVIDIA Container Toolkit Repository på Ubuntu 22.04 LTS:

I dette afsnit skal jeg vise dig, hvordan du installerer NVIDIA Container Toolkit-pakkedepotet på Ubuntu 22.04.

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

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

I den nvidia-container-toolkit.list fil, tilføj følgende linje og tryk på + x efterfulgt af OG og for at gemme filen.

at [ underskrevet af= / usr / del / nøgleringe / nvidia-container-toolkit-keyring.gpg ] https: // nvidia.github.io / libnvidia-container / stabil / gratis 22.04 / $ ( ARCH ) /



Hvis du bruger Ubuntu 20.04 LTS, skal du blot tilføje følgende linje i nvidia-container-toolkit.list fil i stedet, og alt andet skulle fungere uændret.

at [ underskrevet af= / usr / del / nøgleringe / nvidia-container-toolkit-keyring.gpg ] https: // nvidia.github.io / libnvidia-container / stabil / gratis 20.04 / $ ( ARCH ) /


Hvis du bruger Ubuntu 18.04 LTS, skal du blot tilføje følgende linje i nvidia-container-toolkit.list fil i stedet, og alt andet skulle fungere uændret.

at [ underskrevet af= / usr / del / nøgleringe / nvidia-container-toolkit-keyring.gpg ] https: // nvidia.github.io / libnvidia-container / stabil / gratis 18.04 / $ ( ARCH ) /


For at ændringerne træder i kraft, skal du opdatere APT-pakkelagerets cache med følgende kommando:

$ sudo passende opdatering


Installation af nvidia-docker-drivere på Ubuntu 22.04 LTS:

For at installere NVIDIA Docker-driverne på Ubuntu 22.04 skal du køre følgende kommando:

$ sudo passende installere nvidia-docker2

Tryk på for at bekræfte installationen OG og tryk derefter på .


NVIDIA docker-driverne skal være installeret.


For at ændringerne træder i kraft, skal du genstarte din computer med følgende kommando:

$ sudo genstart

Kontrollerer, om NVIDIA GPU er tilgængelig fra Docker-containere i Ubuntu 22.04 LTS:

I dette afsnit vil jeg vise dig, hvordan du opretter en NVIDIA CUDA Docker container og kontroller, at beholderen kan få adgang til NVIDIA GPU'en fra din computer.

For at oprette en NVIDIA CUDA 12 Docker-container baseret på Ubuntu 20.04 LTS og køre nvidia-smi kommando i den, når den er oprettet for at kontrollere, om den kan få adgang til NVIDIA GPU'en fra din computer, skal du køre følgende kommando:

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

Docker trækker nvidia/cuda:12.0.0-base-ubuntu20.04 billede fra Docker Hub. Det vil tage et stykke tid at fuldføre.


Når NVIDIA CUDA docker-billedet er trukket og en container er oprettet, nvidia-smi kommandoen kører på den og udskriver outputtet på konsollen, som du kan se på skærmbilledet nedenfor.

Docker-containeren bruger NVIDIA GPU driver 525.78.01 [1] og CUDA version 12.0 [2] . Hvis du ser lignende udgange, kan Docker-beholderen få adgang til din computers NVIDIA GPU.


Hvis du skal bruge ældre versioner af CUDA, så tjek .

Konklusion:

I denne artikel har jeg vist dig, hvordan du opsætter Docker CE-pakkedepotet på Ubuntu 22.04. Jeg har også vist dig, hvordan du installerer den seneste version af Docker CE på Ubuntu 22.04. Jeg har vist dig, hvordan du installerer NVIDIA Container Toolkit-pakkelageret på Ubuntu 22.04, samt hvordan du installerer NVIDIA Docker-driveren på Ubuntu 22.04. Endelig har jeg vist dig, hvordan du får adgang til NVIDIA GPU'en på din computer fra en Docker-beholder.

Referencer: