web-dev-qa-db-fra.com

Docker Construire avec NVIDIA Runtime

J'ai une application GPU qui effectue des tests unitaires pendant la phase de construction d'images. Avec Docker 19.03, on peut spécifier NVIDIA Runtime avec docker run --gpus all Mais j'ai aussi besoin d'accès aux GPU pour docker build Parce que je fais des tests unitaires. Comment puis-je atteindre cet objectif?

Pour la version plus ancienne de Docker qui utilise Nvidia-Docker2, il n'était pas possible de spécifier l'exécution pendant la construction de la scène de construction, mais vous pouvez définir le temps d'exécution par défaut pour être NVIDIA et Docker Build fonctionne bien de cette façon. Puis-je faire cela à Docker 19.03 qui n'a plus besoin de Nvidia-Docker? Si c'est le cas, comment?

8
danny

Vous avez besoin d'une utilisation NVIDIA-CONTENIR-Runtime comme expliqué dans DOCS : "C'est également le seul moyen d'avoir accès GPU lors de la construction Docker".

Étapes pour Ubuntu:

  1. Installez NVIDIA-CONTAINER-Runtime:

    Sudo apt-get install nvidia-container-runtime

  2. Modifier/Créer le /etc/docker/daemon.json avec contenu:

{
    "runtimes": {
        "nvidia": {
            "path": "/usr/bin/nvidia-container-runtime",
            "runtimeArgs": []
         } 
    },
    "default-runtime": "nvidia" 
}
  1. Redémarrez Docker Daemon:

    Sudo systemctl restart docker

  2. Construisez votre image (maintenant GPU disponible pendant la construction):

    docker build -t my_image_name:latest .

0
Anton Ganichev

Vous devez installer le pilote NVIDIA et Docker 19.03 pour votre Distribution Linux Notez que vous n'avez pas besoin d'installer la boîte à outils CUDA sur l'hôte, mais le pilote doit être installé.

Avec la libération de Docker 19.03, l'utilisation des forfaits NVIDIA-Docker2 est obsolète car NVIDIA GPU est désormais pris en charge de manière nativement prise en charge en tant que périphériques de l'exécution Docker.

Si vous utilisez les packages NVIDIA-Docker2, examinez les instructions de la "- Mise à niveau avec NVIDIA-Docker2 ".

Pour les premiers utilisateurs de Docker 19.03 et GPU, continuez avec les instructions de démarrage ci-dessous. tilisation

# Add the package repositories
distribution=$(. /etc/os-release;echo $ID$VERSION_ID)
curl -s -L https://nvidia.github.io/nvidia-docker/gpgkey | Sudo apt-key add -
curl -s -L https://nvidia.github.io/nvidia-docker/$distribution/nvidia-docker.list | Sudo tee /etc/apt/sources.list.d/nvidia-docker.list

Sudo apt-get update && Sudo apt-get install -y nvidia-container-toolkit
Sudo systemctl restart docker

pour plus d'informations, veuillez visiter: https://github.com/nvidia/nvidia-docker

0
Harsh Manvar