Como usar a GPU da NVIDIA nos recipientes do Docker no Debian Top 10

Como usar a GPU da NVIDIA nos recipientes do Docker no Debian Top 10
Você pode repassar sua GPU NVIDIA nos recipientes do Docker e executar os programas CUDA na sua GPU NVIDIA desses contêineres do Docker. Este é um recurso muito útil para aprender ai (inteligência artificial). Sendo capaz de ruan os códigos de IA (eu.e. Tensorflow) nos contêineres do Docker economizará muito tempo. Você também pode experimentar seus códigos de IA em diferentes versões CUDA sem precisar alterar a versão CUDA em seu computador.

Firando com os motoristas da NVIDIA e as versões CUDA no seu computador podem causar problemas como os motoristas da NVIDIA não funcionando ou deixando você com uma tela de morte preta/azul. É sempre uma boa ideia deixar seu sistema como ele é e fazer alterações em um ambiente isolado, como os contêineres do Docker. Isso mantém o computador principal limpo (de ferramentas de desenvolvimento desnecessárias).

Neste artigo, mostraremos como instalar o Docker CE e a NVIDIA Docker no Debian 11 para que você possa acessar a GPU da NVIDIA do seu computador a partir dos contêineres do Docker e executar os programas CUDA em sua GPU NVIDIA.

Índice:

  1. Verificando se os motoristas oficiais da NVIDIA GPU estiverem instalados no Debian 11
  2. Instalando as dependências do Docker CE no Debian 11
  3. Instalando as chaves do Docker CE GPG no Debian 11
  4. Instalando o repositório do Docker CE no Debian 11
  5. Instalando o Docker CE no Debian 11
  6. Adicionando o usuário do Login Debian 11 ao grupo Docker
  7. Verificando se o Docker CE for instalado corretamente no Debian 11
  8. Instalando as teclas NVIDIA Container Toolkit GPG no Debian 11
  9. Instalando o NVIDIA Container Toolkit Repository no Debian 11
  10. Instalando os drivers NVIDIA-Docker no Debian 11
  11. Verificando se a GPU da NVIDIA estiver acessível a partir dos contêineres do Docker no Debian 11
  12. Conclusão
  13. Referências

Verificando se os motoristas oficiais da NVIDIA GPU estiverem instalados no Debian 11

Antes de começar, execute o comando a seguir para verificar se você tem uma GPU da NVIDIA instalada no seu computador:

$ lspci | Grep VGA

Nesse caso, temos a GPU NVIDIA GTX 1050 TI instalada em nosso computador. Você provavelmente terá uma GPU NVIDIA diferente instalada no seu computador.

Além disso, certifique -se de ter os drivers oficiais da NVIDIA instalados no seu sistema operacional Debian 11 com o seguinte comando:

$ lsmod | Grep Nvidia

Se os motoristas oficiais da NVIDIA estiverem instalados no seu sistema operacional Debian 11, você verá as seguintes saídas:

Além disso, verifique se os motoristas oficiais da NVIDIA GPU estão trabalhando com o seguinte comando:

$ nvidia-smi

Se os motoristas oficiais da NVIDIA GPU estiverem funcionando, você verá as seguintes saídas. Como você pode ver, temos o driver oficial da NVIDIA GPU versão 470.161.03 Instalado em nossa máquina Debian 11:

Se você não tiver os drivers oficiais da NVIDIA GPU instalados em sua máquina Debian 11 e precisará de assistência com isso, verifique o artigo sobre como instalar os drivers da NVIDIA no Debian 11.

Instalando as dependências do Docker CE no Debian 11

Antes de instalar o Docker CE no Debian 11, você precisa instalar os pacotes de dependência do Docker CE necessários no Debian 11.

Primeiro, atualize o cache do repositório de pacotes apt com o seguinte comando:

$ sudo apt update

O cache do repositório de pacotes apt deve ser atualizado.

Para instalar os pacotes de dependência necessários do Docker CE, execute o seguinte comando:

$ sudo apt-get Install Ca-certificados

Para confirmar a instalação, pressione Y e depois pressione .

Os pacotes de dependência do Docker CE necessários devem ser instalados.

Instalando as chaves do Docker CE GPG no Debian 11

Nesta seção, mostraremos como instalar a chave GPG do repositório de pacotes do Docker CE no Debian 11.

Primeiro, crie uma nova pasta/etc/apt/keyrings com o seguinte comando:

$ sudo mkdir -p/etc/apt/chaveiros

Para instalar a chave GPG do repositório de pacotes do Docker CE no Debian 11, execute o seguinte comando:

$ CURL -FSSL https: // Download.Docker.com/linux/debian/gpg | sudo gpg - -daarmor -o/etc/apt/keyrings/docker.gpg

Instalando o repositório do Docker CE no Debian 11

Para instalar o repositório do pacote Docker CE no Debian 11, execute o seguinte comando:

$ echo "Deb [arch = $ (dpkg --print-architecture) assinado por by =/etc/apt/keyrings/docker.gpg] https: // download.Docker.com/linux/debian $ (lsb_release -cs) estável "| sudo tee/etc/apt/fontes.lista.D/Docker.Lista> /dev /null

Atualize o cache do repositório de pacote APT para que as alterações tenham efeito.

$ sudo apt update

Instalando o Docker CE no Debian 11

Para instalar a versão mais recente do Docker CE no Debian 11, execute o seguinte comando:

$ sudo apt-get install docker-c docker-c-cli contêinerd.IO Docker-Compose-Plugin

Para confirmar a instalação, pressione Y e depois pressione .

O Docker CE e os pacotes de dependência necessários estão sendo baixados. Leva um tempo para completar.

O Docker CE e os pacotes de dependência necessários estão sendo instalados. Leva um tempo para completar.

O Docker CE e os pacotes de dependência necessários devem ser instalados neste momento.

Adicionando o usuário do Login Debian 11 ao grupo Docker

Para criar os contêineres do Docker e gerenciá -los sem usar sudo ou sem fazer login como usuário root, você deve adicionar seu usuário de login ao grupo Docker.

Para adicionar o usuário de login do seu Debian 11 ao grupo Docker, execute o seguinte comando:

$ sudo userMod -AG Docker $ (whoami)

Para que as mudanças entrem em vigor, reinicie o computador com o seguinte comando:

$ sudo reiniciar

Verificando se o Docker CE for instalado corretamente no Debian 11

Depois que o computador começar, execute o seguinte comando para verificar se você pode acessar o Docker sem privilégios de superusuário:

Versão $ docker

Se tudo funcionar, você deve ver as seguintes saídas.

Como você pode ver, estamos executando a versão 20 do Docker.10.23 - A versão mais recente do Docker CE no momento da redação deste artigo.

Instalando as teclas NVIDIA Container Toolkit GPG no Debian 11

Nesta seção, mostraremos como instalar a chave GPG do NVIDIA Container Toolkit Package Repository no Debian 11.

Para instalar a chave GPG do NVIDIA Container Toolkit Package Repository no Debian 11, execute o seguinte comando:

$ CURL -FSSL https: // nvidia.Github.io/libnvidia-container/gpgkey | SUDO GPG--DEARMOR -O/USR/SHARE/keyrings/nvidia-container-toolkit-keyring.gpg

Instalando o NVIDIA Container Toolkit Repository no Debian 11

Nesta seção, mostraremos como instalar o NVIDIA Container Toolkit Package Repository no Debian 11.

Primeiro, crie um novo arquivo de origem APT NVIDIA-CONTINER-TOOLKIT.Lista no/etc/apt/fontes.lista.D/ Diretório da seguinte forma:

$ sudo nano/etc/apt/fontes.lista.d/nvidia-container-toolkit.lista

No Nvidia-container-Toolkit.Lista Arquivo, adicione a seguinte linha e pressione + x seguido por y e salve o arquivo:

Deb [assinado por.gpg] https: // nvidia.Github.io/libnvidia-container/stable/debian11/$ (arch)/

Para que as alterações entrem em vigor, atualize o cache do repositório de pacotes apt com o seguinte comando:

$ sudo apt update

Instalando os drivers NVIDIA-Docker no Debian 11

Para instalar os drivers da NVIDIA Docker no Debian 11, execute o seguinte comando:

$ sudo apt install nvidia-docker2

Para confirmar a instalação, pressione Y e depois pressione .

Os drivers NVIDIA Docker devem ser instalados.

Para que as mudanças entrem em vigor, reinicie o computador com o seguinte comando:

$ sudo reiniciar

Verificando se a NVIDIA GPU estiver acessível a partir dos contêineres do Docker no Debian 11

Nesta seção, mostraremos como criar um contêiner Nvidia Cuda Docker e verificar se o contêiner pode acessar a GPU da NVIDIA do seu computador.

Para criar um contêiner NVIDIA CUDA 12 Docker Baseado no Ubuntu 20.04 LTS e execute o comando NVIDIA-SMI nele, uma vez criado para verificar se ele pode acessar a GPU da NVIDIA do seu computador, execute o seguinte comando:

$ Docker Run -RM - -GPUS TODOS NVIDIA/CUDA: 12.0.0-Base-Ubuntu20.04 Nvidia-smi

Docker está puxando o NVIDIA/CUDA: 12.0.0-Base-Ubuntu20.04 Imagem do hub do documento. Leva um tempo para completar.

Depois que a imagem do Docker Nvidia Cuda é puxada e um contêiner é criado, o comando nvidia-smi é executado nela e imprime a saída no console, como você pode ver na captura de tela a seguir:

O contêiner do docker usa o driver da NVIDIA GPU 525.78.01[1] e a versão 12 CUDA.0[2]. Se você vir algumas saídas semelhantes, o contêiner do Docker pode acessar a GPU da NVIDIA do seu computador.

Se você precisar usar as versões mais antigas do CUDA, verifique a imagem NVIDIA/CUDA no Docker Hub.

Conclusão

Mostramos como instalar o repositório de pacotes do Docker CE no Debian 11. Também mostramos como instalar a versão mais recente do Docker CE no Debian 11. Mostramos como instalar o NVIDIA Container Toolkit Package Repository no Debian 11, bem como como instalar o NVIDIA Docker Driver no Debian 11. Finalmente, mostramos como acessar a GPU da NVIDIA do seu computador de um contêiner Docker.

Referências:

  1. https: // docs.nvidia.com/datacenter/nuvem nativo/contêiner-toolkit/install-guide.html
  2. https: // hub.Docker.com/r/nvidia/cuda/tags