Comment utiliser le GPU Nvidia dans des conteneurs Docker sur Ubuntu Top 10.Top 10 LTS

Comment utiliser le GPU Nvidia dans des conteneurs Docker sur Ubuntu Top 10.Top 10 LTS

Vous pouvez passer votre GPU Nvidia dans des conteneurs Docker et exécuter des programmes CUDA sur votre GPU Nvidia à partir de ces conteneurs Docker. Ceci est une fonctionnalité très utile pour apprendre l'IA (intelligence artificielle). Être capable d'exécuter des codes AI (i.e. TensorFlow) sur les conteneurs Docker vous fera gagner beaucoup de temps. Vous pouvez également essayer vos codes AI sur différentes versions CUDA sans avoir besoin de modifier la version CUDA sur votre ordinateur.

Tiver avec les pilotes Nvidia et les versions CUDA sur votre ordinateur peut causer des problèmes comme les pilotes Nvidia ne fonctionnent pas ou ne vous laissent pas avec un écran noir / bleu de la mort. Donc, c'est toujours une bonne idée de quitter votre système tel quel et d'apporter des modifications dans un environnement isolé comme des conteneurs Docker. Cela maintient votre ordinateur principal propre (des outils de développement inutiles).

Dans cet article, je vais vous montrer comment configurer Docker CE et Nvidia Docker sur Ubuntu 22.04 LTS afin que vous puissiez accéder au GPU NVIDIA de votre ordinateur à partir de conteneurs Docker et exécuter des programmes CUDA sur votre GPU NVIDIA.

Table des matières:

  1. Vérification si les pilotes officiels du GPU NVIDIA sont installés sur Ubuntu 22.04 LTS
  2. Installation des dépendances Docker CE sur Ubuntu 22.04 LTS
  3. Installation des clés Docker CE GPG sur Ubuntu 22.04 LTS
  4. Installation du référentiel Docker CE sur Ubuntu 22.04 LTS
  5. Installation de Docker CE sur Ubuntu 22.04 LTS
  6. Ajout de l'ubuntu 22.04 LTS Connexion Utilisateur au groupe Docker
  7. Vérification si Docker CE a été installé correctement sur Ubuntu 22.04 LTS
  8. Installation de la boîte à outils Nvidia Container Keys GPG sur Ubuntu 22.04 LTS
  9. Installation du référentiel Nvidia Container Toolkit sur Ubuntu 22.04 LTS
  10. Installation des pilotes Nvidia-Docker sur Ubuntu 22.04 LTS
  11. Vérification si Nvidia GPU est accessible à partir de conteneurs Docker dans Ubuntu 22.04 LTS
  12. Conclusion
  13. Les références

Vérification si les pilotes officiels du GPU NVIDIA sont installés sur Ubuntu 22.04 LTS:

Avant de commencer, exécutez la commande suivante pour vérifier que vous avez installé un GPU NVIDIA sur votre ordinateur.

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

Dans ce cas, j'ai installé NVIDIA GTX 1050 TI sur mon ordinateur. Vous aurez très probablement un autre NVIDIA GPU installé sur votre ordinateur.


Assurez-vous également que les pilotes Nvidia officiels sont installés sur votre Ubuntu 22.04 Système d'exploitation avec la commande suivante:

$ lsmod | grep nvidia

Si les pilotes officiels de Nvidia sont installés sur votre Ubuntu 22.04 Système d'exploitation, vous verrez les sorties suivantes.


Vérifiez également si les pilotes officiels de GPU NVIDIA travaillent avec la commande suivante:

$ nvidia-smi

Si les chauffeurs officiels du GPU NVIDIA fonctionnent, vous verrez les sorties suivantes. Comme vous pouvez le voir, j'ai la version officielle du pilote GPU NVIDIA GPU Version 525.78.01 installé sur mon Ubuntu 22.04 machine.


Si vous n'avez pas les pilotes officiels de GPU NVIDIA installés sur votre Ubuntu 22.04 Machine et vous avez besoin d'aide avec cela, veuillez vérifier l'article comment installer les pilotes Nvidia sur Ubuntu 22.04 LTS.

Installation des dépendances Docker CE sur Ubuntu 22.04 LTS:

Avant de pouvoir installer Docker CE sur Ubuntu 22.04, vous devrez installer les packages de dépendance Docker CE requis sur Ubuntu 22.04.

Tout d'abord, mettez à jour le cache du référentiel de package APT avec la commande suivante:

$ sudo apt mise à jour

Le cache du référentiel de package APT doit être mis à jour.


Pour installer les packages de dépendance requis de Docker CE, exécutez la commande suivante:

$ sudo apt-get install ca-certificates curl gnupg LSB-libérer

Pour confirmer l'installation, appuyez sur Y Et puis appuyez sur .


Les packages de dépendance Docker CE requis doivent être installés.

Installation des clés Docker CE GPG sur Ubuntu 22.04 LTS:

Dans cette section, je vais vous montrer comment installer la clé GPG du référentiel de package Docker CE sur Ubuntu 22.04.

Tout d'abord, créez un nouveau dossier / etc / apt / clés avec la commande suivante:

$ sudo mkdir -p / etc / apt / clés

Pour installer la clé GPG du référentiel Docker CE Package sur Ubuntu 22.04, exécutez la commande suivante:

$ curl -fssl https: // télécharger.docker.com / linux / ubuntu / gpg | sudo gpg --dearmor -o / etc / apt / keyrings / docker.GPG

Installation du référentiel Docker CE sur Ubuntu 22.04 LTS:

Pour installer le référentiel Docker CE Package sur Ubuntu 22.04, exécutez la commande suivante:

$ echo "deb [arch = $ (dpkg --print-architecture) signé-by = / etc / apt / clés / docker / docker.gpg] https: // télécharger.docker.com / linux / ubuntu $ (lsb_release -cs) stable "| tee sudo / etc / apt / sources.liste.d / docker.liste> / dev / null

Mettez à jour le cache du référentiel de packages APT pour que les modifications prennent effet.

$ sudo apt mise à jour


Installation de Docker CE sur Ubuntu 22.04 LTS:

Pour installer la dernière version de Docker CE sur Ubuntu 22.04, exécutez la commande suivante:

$ sudo apt-get install docker-ge docker-cli contenerd.IO Docker-Compose-Plugin

Pour confirmer l'installation, appuyez sur Y Et puis appuyez sur .


Docker CE et les packages de dépendance requis sont en cours de téléchargement. Il faudra un certain temps pour terminer.


Docker CE et les forfaits de dépendance requis sont installés. Il faudra un certain temps pour terminer.


Docker CE et les forfaits de dépendance requis doivent être installés à ce stade.

Ajout de l'ubuntu 22.04 LTS Connexion Utilisateur au groupe Docker:

Pour créer des conteneurs Docker et les gérer sans utiliser sudo ou connecté en tant qu'utilisateur racine, vous devrez ajouter votre utilisateur de connexion au docker groupe.

Pour ajouter l'utilisateur de connexion de votre Ubuntu 22.04 au docker groupe, exécutez la commande suivante:

$ sudo usermod -ag docker $ (whoami)

Pour que les modifications prennent effet, redémarrez votre ordinateur avec la commande suivante:

$ sudo redémarrer

Vérification si Docker CE a été installé correctement sur Ubuntu 22.04 LTS:

Une fois votre ordinateur au démarrage, exécutez la commande suivante pour vérifier que vous pouvez accéder à Docker sans privilèges de superutilisateur.

$ Docker Version

Si tout fonctionne, vous devriez voir les sorties suivantes.

Comme vous pouvez le voir, j'exécute Docker version 20.dix.23 - La dernière version de Docker CE au moment de la rédaction de cet article.

Installation de la boîte à outils Nvidia Container Keys GPG sur Ubuntu 22.04:

Dans cette section, je vais vous montrer comment installer la clé GPG du référentiel de boîte à outils NVIDIA Container sur Ubuntu 22.04.

Pour installer la touche GPG du référentiel du package de boîte à outils Nvidia Container sur Ubuntu 22.04, exécutez la commande suivante:

$ curl -fssl https: // nvidia.github.IO / libnvidia-container / gpgkey | sudo gpg --dearmor -o / usr / share / keyrings / nvidia-contrainer-toolkit-keyring.GPG

Installation du référentiel Nvidia Container Toolkit sur Ubuntu 22.04 LTS:

Dans cette section, je vais vous montrer comment installer le référentiel du package Nvidia Container Toolkit sur Ubuntu 22.04.

Tout d'abord, créez un nouveau fichier source APT nvidia-contenant-toolkit.liste dans le / etc / apt / sources.liste.d/ Répertoire comme suit:

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

Dans le nvidia-contenant-toolkit.liste fichier, ajouter la ligne suivante et appuyer sur + X suivie par Y et Pour enregistrer le fichier.

deb [signé-by = / usr / share / clés / nvidia-container-toolkit-keyring.gpg] https: // nvidia.github.IO / libnvidia-container / stable / ubuntu22.04 / $ (arch) /



NOTE: Si vous utilisez Ubuntu 20.04 LTS, alors tout ce que vous avez à faire est d'ajouter la ligne suivante dans le nvidia-contenant-toolkit.liste Fichier à la place et tout le reste devrait fonctionner inchangé.

deb [signé-by = / usr / share / clés / nvidia-container-toolkit-keyring.gpg] https: // nvidia.github.IO / libnvidia-container / stable / ubuntu20.04 / $ (arch) /


NOTE: Si vous utilisez Ubuntu 18.04 LTS, alors tout ce que vous avez à faire est d'ajouter la ligne suivante dans le nvidia-contenant-toolkit.liste Fichier à la place et tout le reste devrait fonctionner inchangé.

deb [signé-by = / usr / share / clés / nvidia-container-toolkit-keyring.gpg] https: // nvidia.github.IO / libnvidia-container / stable / ubuntu18.04 / $ (arch) /


Pour que les modifications prennent effet, mettez à jour le cache du référentiel de package APT avec la commande suivante:

$ sudo apt mise à jour


Installation des pilotes Nvidia-Docker sur Ubuntu 22.04 LTS:

Pour installer les pilotes Nvidia Docker sur Ubuntu 22.04, exécutez la commande suivante:

$ sudo apt install nvidia-docker2

Pour confirmer l'installation, appuyez sur Y Et puis appuyez sur .


Les pilotes Nvidia Docker doivent être installés.


Pour que les modifications prennent effet, redémarrez votre ordinateur avec la commande suivante:

$ sudo redémarrer

Vérification si Nvidia GPU est accessible à partir de conteneurs Docker dans Ubuntu 22.04 LTS:

Dans cette section, je vais vous montrer comment créer un conteneur Nvidia Cuda Docker et vérifier que le conteneur peut accéder au GPU Nvidia depuis votre ordinateur.

Pour créer un conteneur Nvidia Cuda 12 Docker basé sur Ubuntu 20.04 LTS et exécutez le nvidia-SMI Commande dedans une fois qu'il est créé pour vérifier s'il peut accéder au GPU Nvidia depuis votre ordinateur, exécutez la commande suivante:

$ docker run --rm --gpus tous nvidia / cuda: 12.0.0-base-Ubuntu20.04 Nvidia-SMI

Docker tire le nvidia / cuda: 12.0.0-base-Ubuntu20.04 Image de Docker Hub. Il faudra un certain temps pour terminer.


Une fois l'image Nvidia Cuda Docker tirée et un conteneur créé, le nvidia-SMI La commande s'exécutera dessus et imprimera la sortie sur la console comme vous pouvez le voir dans la capture d'écran ci-dessous.

Le conteneur Docker utilise le Nvidia GPU Driver 525.78.01[1] et le CUDA version 12.0[2]. Si vous voyez des sorties similaires, le conteneur Docker peut accéder au GPU NVIDIA de votre ordinateur.


Si vous avez besoin d'utiliser des versions anciennes de CUDA, vérifiez l'image Nvidia / Cuda chez Docker Hub.

Conclusion:

Dans cet article, je vous ai montré comment configurer le référentiel Docker CE Package sur Ubuntu 22.04. Je vous ai également montré comment installer la dernière version de Docker CE sur Ubuntu 22.04. Je vous ai montré comment installer le référentiel du package Nvidia Container Toolkit sur Ubuntu 22.04 ainsi que comment installer le pilote Nvidia Docker sur Ubuntu 22.04. Enfin, je vous ai montré comment accéder au GPU Nvidia de votre ordinateur à partir d'un conteneur Docker.

Les références:

  1. https: // docs.nvidia.com / datacenter / cloud-native / contener-toolkit / install-guide.html
  2. https: // hub.docker.com / r / nvidia / cuda / tags