Come utilizzare la GPU Nvidia in contenitori Docker su Ubuntu Top 10.Top 10 LTS

Come utilizzare la GPU Nvidia in contenitori Docker su Ubuntu Top 10.Top 10 LTS

Puoi passthrough la tua GPU Nvidia in contenitori Docker ed eseguire programmi CUDA sulla tua GPU NVIDIA da questi contenitori Docker. Questa è una caratteristica molto utile per l'apprendimento dell'IA (intelligenza artificiale). Essere in grado di eseguire codici AI (i.e. Tensorflow) su contenitori Docker ti farà risparmiare molto tempo. Puoi anche provare i tuoi codici AI su diverse versioni CUDA senza dover cambiare la versione CUDA sul tuo computer.

Presero con driver Nvidia e versioni CUDA sul tuo computer può causare problemi come i driver Nvidia che non funzionano o lasciarti con uno schermo di morte nero/blu. Quindi, è sempre una buona idea lasciare il tuo sistema così com'è e apportare modifiche in un ambiente isolato come i contenitori Docker. Questo mantiene il tuo computer principale pulito (di strumenti di sviluppo inutili).

In questo articolo, ti mostrerò come configurare Docker CE e Nvidia Docker su Ubuntu 22.04 LTS in modo da poter accedere alla GPU NVIDIA del tuo computer dai contenitori Docker ed eseguire programmi CUDA sulla tua GPU NVIDIA.

Sommario:

  1. Verifica se i driver GPU NVIDIA ufficiali sono installati su Ubuntu 22.04 LTS
  2. Installazione delle dipendenze Docker CE da Ubuntu 22.04 LTS
  3. Installazione di tasti GPG Docker CE su Ubuntu 22.04 LTS
  4. Installazione del repository Docker CE su Ubuntu 22.04 LTS
  5. Installazione di Docker CE su Ubuntu 22.04 LTS
  6. Aggiunta di Ubuntu 22.04 LTS Accedi utente al gruppo Docker
  7. Verifica se Docker CE è stato installato correttamente su Ubuntu 22.04 LTS
  8. Installazione dei tasti GPG di NVIDIA Conteiner Toolkit su Ubuntu 22.04 LTS
  9. Installazione del repository di toolkit del contenitore Nvidia su Ubuntu 22.04 LTS
  10. Installazione dei driver Nvidia-Docker su Ubuntu 22.04 LTS
  11. Verifica se Nvidia GPU è accessibile dai contenitori Docker in Ubuntu 22.04 LTS
  12. Conclusione
  13. Riferimenti

Verifica se i driver GPU NVIDIA ufficiali sono installati su Ubuntu 22.04 LTS:

Prima di iniziare, eseguire il seguente comando per verificare di avere una GPU NVIDIA installata sul tuo computer.

$ lspci | egrep -i 'vga | 3d | display'

In questo caso, ho la GPU Nvidia GTX 1050 TI installata sul mio computer. Molto probabilmente avrai una GPU Nvidia diversa installata sul tuo computer.


Inoltre, assicurati di avere i driver Nvidia ufficiali installati sul tuo Ubuntu 22.04 Sistema operativo con il seguente comando:

$ lsmod | grep nvidia

Se i driver Nvidia ufficiali sono installati sul tuo Ubuntu 22.04 Sistema operativo, vedrai le seguenti output.


Inoltre, controlla se i driver GPU NVIDIA ufficiali stanno lavorando con il seguente comando:

$ nvidia-smi

Se i driver GPU Nvidia ufficiali funzionano, vedrai i seguenti output. Come puoi vedere, ho il driver GPU NVIDIA ufficiale versione 525.78.01 installato sul mio ubuntu 22.04 macchina.


Se non hai i driver GPU Nvidia ufficiali installati sul tuo Ubuntu 22.04 macchina e hai bisogno di assistenza con questo, controlla l'articolo come installare i driver Nvidia su Ubuntu 22.04 LTS.

Installazione delle dipendenze Docker CE da Ubuntu 22.04 LTS:

Prima di poter installare Docker CE su Ubuntu 22.04, dovrai installare i pacchetti di dipendenza Docker CE richiesti su Ubuntu 22.04.

Innanzitutto, aggiorna la cache del repository del pacchetto APT con il seguente comando:

$ sudo apt update

La cache del repository del pacchetto APT deve essere aggiornata.


Per installare i pacchetti di dipendenza richiesti di Docker CE, eseguire il seguente comando:

$ sudo apt-get Installa certificati CA Curl gnupg LSB-release

Per confermare l'installazione, premere Y e poi premere .


I pacchetti di dipendenza Docker CE richiesti devono essere installati.

Installazione di tasti GPG Docker CE su Ubuntu 22.04 LTS:

In questa sezione, ti mostrerò come installare la chiave gpg del repository pacchetti Docker CE su Ubuntu 22.04.

Innanzitutto, crea una nuova cartella /etc/apt/keyrings con il seguente comando:

$ sudo mkdir -p/etc/apt/keyrings

Per installare la chiave GPG del repository pacchetti Docker CE su Ubuntu 22.04, eseguire il seguente comando:

$ CURL -FSSL https: // download.Docker.com/linux/ubuntu/gpg | Sudo GPG - -DEARMOR -O/ETC/APT/KEYRINGS/Docker.gpg

Installazione del repository Docker CE su Ubuntu 22.04 LTS:

Per installare il repository pacchetti Docker CE su Ubuntu 22.04, eseguire il seguente comando:

$ echo "deb [arch = $ (dpkg --print-architecture) firmato da =/etc/apt/keyrings/docker.gpg] https: // download.Docker.com/linux/ubuntu $ (lsb_release -cs) stabile "| sudo tee/etc/apt/fonti.elenco.D/Docker.Elenco> /dev /null

Aggiorna la cache del repository del pacchetto APT per le modifiche per avere effetto.

$ sudo apt update


Installazione di Docker CE su Ubuntu 22.04 LTS:

Per installare l'ultima versione di Docker CE su Ubuntu 22.04, eseguire il seguente comando:

$ sudo apt-get install docker-ce docker-ce-cli containerd.IO Docker-Opgin-Plugin

Per confermare l'installazione, premere Y e poi premere .


Docker CE e i pacchetti di dipendenza richiesti vengono scaricati. Ci vorrà un po 'di tempo per completare.


Docker CE e i pacchetti di dipendenza richiesti vengono installati. Ci vorrà un po 'di tempo per completare.


Docker CE e i pacchetti di dipendenza richiesti dovrebbero essere installati a questo punto.

Aggiunta di Ubuntu 22.04 LTS Accedi utente al gruppo Docker:

Per creare contenitori Docker e gestirli senza utilizzare sudo o accedere come utente root, dovrai aggiungere l'utente di accesso al Docker gruppo.

Per aggiungere l'utente di accesso del tuo Ubuntu 22.04 a Docker Gruppo, eseguire il seguente comando:

$ sudo usermod -ag docker $ (whoami)

Per avere effetto le modifiche, riavviare il computer con il seguente comando:

$ sudo riavvia

Verifica se Docker CE è stato installato correttamente su Ubuntu 22.04 LTS:

Una volta avviato il computer, eseguire il comando seguente per verificare che tu possa accedere a Docker senza privilegi superuser.

$ Docker versione

Se tutto funziona, dovresti vedere i seguenti output.

Come puoi vedere, sto eseguendo Docker versione 20.10.23 - L'ultima versione di Docker CE al momento della stesura.

Installazione dei tasti GPG di NVIDIA Conteiner Toolkit su Ubuntu 22.04:

In questa sezione, ti mostrerò come installare la chiave gpg del repository pacchetto toolkit Nvidia su Ubuntu 22.04.

Per installare la chiave GPG del repository pacchetto toolkit del contenitore Nvidia su Ubuntu 22.04, eseguire il seguente comando:

$ CURL -FSSL https: // nvidia.github.IO/libnvidia-contener/gpgkey | Sudo GPG--DEARMOR -O/usr/share/keyrings/nvidia-contener-toolkit-keyring.gpg

Installazione del repository di toolkit del contenitore Nvidia su Ubuntu 22.04 LTS:

In questa sezione, ti mostrerò come installare il repository pacchetto toolkit NVIDIA su Ubuntu 22.04.

Innanzitutto, crea un nuovo file di origine APT Nvidia-contener-toolkit.elenco nel /etc/apt/fonti.elenco.D/ directory come segue:

$ sudo nano/etc/apt/fonti.elenco.d/nvidia-contener-toolkit.elenco

Nel Nvidia-contener-toolkit.elenco file, aggiungi la riga seguente e premi + X seguito da Y E Per salvare il file.

Deb [firmato per =/usr/share/keyrings/nvidia-contener-toolkit-keyring.gpg] https: // nvidia.github.io/libnvidia-container/stable/ubuntu22.04 /$ (arco) /



NOTA: Se stai usando Ubuntu 20.04 LTS, quindi tutto ciò che devi fare è aggiungere la seguente riga in Nvidia-contener-toolkit.elenco file invece e tutto il resto dovrebbe funzionare invariato.

Deb [firmato per =/usr/share/keyrings/nvidia-contener-toolkit-keyring.gpg] https: // nvidia.github.io/libnvidia-container/stable/ubuntu20.04 /$ (arco) /


NOTA: Se stai usando Ubuntu 18.04 LTS, quindi tutto ciò che devi fare è aggiungere la seguente riga in Nvidia-contener-toolkit.elenco file invece e tutto il resto dovrebbe funzionare invariato.

Deb [firmato per =/usr/share/keyrings/nvidia-contener-toolkit-keyring.gpg] https: // nvidia.github.io/libnvidia-container/stable/ubuntu18.04 /$ (arco) /


Per avere effetto sulle modifiche, aggiorna la cache del repository del pacchetto APT con il seguente comando:

$ sudo apt update


Installazione dei driver Nvidia-Docker su Ubuntu 22.04 LTS:

Per installare i driver Nvidia Docker su Ubuntu 22.04, eseguire il seguente comando:

$ sudo apt Installa nvidia-docker2

Per confermare l'installazione, premere Y e poi premere .


I driver Docker Nvidia devono essere installati.


Per avere effetto le modifiche, riavviare il computer con il seguente comando:

$ sudo riavvia

Verifica se Nvidia GPU è accessibile dai contenitori Docker in Ubuntu 22.04 LTS:

In questa sezione, ti mostrerò come creare un contenitore Docker Cuda Nvidia e verificare che il contenitore possa accedere alla GPU NVIDIA dal tuo computer.

Per creare un contenitore Docker Nvidia CUDA 12 basato su Ubuntu 20.04 LTS e eseguire il nvidia-smi Comando in esso una volta creato per verificare se può accedere alla GPU NVIDIA dal tuo computer, eseguire il comando seguente:

$ Docker Run - -RM --gpus All Nvidia/Cuda: 12.0.0-Base-Obuntu20.04 Nvidia-SMI

Docker sta tirando il nvidia/cuda: 12.0.0-Base-Obuntu20.04 Immagine da Docker Hub. Ci vorrà un po 'di tempo per completare.


Una volta tirata l'immagine nvidia cuda docker e viene creata un contenitore, il nvidia-smi Il comando verrà eseguito su di esso e stampano l'output sulla console come si può vedere nello screenshot qui sotto.

Il contenitore Docker sta usando il Driver GPU NVIDIA 525.78.01[1] e il Cuda versione 12.0[2]. Se vedi output simili, il contenitore Docker può accedere alla GPU NVIDIA del tuo computer.


Se è necessario utilizzare le versioni precedenti di CUDA, controlla l'immagine Nvidia/CUDA su Docker Hub.

Conclusione:

In questo articolo, ti ho mostrato come configurare il repository pacchetti Docker CE su Ubuntu 22.04. Ti ho anche mostrato come installare l'ultima versione di Docker CE su Ubuntu 22.04. Ti ho mostrato come installare il repository dei pacchetti toolkit del contenitore Nvidia su Ubuntu 22.04 e come installare il driver Docker Nvidia su Ubuntu 22.04. Infine, ti ho mostrato come accedere alla GPU NVIDIA del tuo computer da un contenitore Docker.

Riferimenti:

  1. https: // docs.nvidia.com/datacenter/cloud-nativo/container-toolkit/install-guide.html
  2. https: // hub.Docker.com/r/nvidia/cuda/tag