Как да използвате NVIDIA GPU в Docker контейнери на Ubuntu 22.04 LTS

Kak Da Izpolzvate Nvidia Gpu V Docker Kontejneri Na Ubuntu 22 04 Lts



Можете да преминете през вашия NVIDIA GPU в Docker контейнери и да стартирате CUDA програми на вашия NVIDIA GPU от тези Docker контейнери. Това е много полезна функция за изучаване на AI (изкуствен интелект). Възможността да изпълнявате AI кодове (т.е. Tensorflow) на Docker контейнери ще ви спести много време. Можете също така да изпробвате своите AI кодове на различни версии на CUDA, без да е необходимо да променяте версията на CUDA на вашия компютър.

Играта с драйвери на NVIDIA и версии на CUDA на вашия компютър може да причини проблеми, като например драйверите на NVIDIA да не работят или да ви оставят с черен/син екран на смъртта. Така че винаги е добра идея да оставите системата си такава, каквато е, и да правите промени в изолирана среда като Docker контейнери. Това поддържа основния ви компютър чист (от ненужни инструменти за разработка).







В тази статия ще ви покажа как да настроите Docker CE и NVIDIA докер на Ubuntu 22.04 LTS, така че да имате достъп до NVIDIA GPU на вашия компютър от Docker контейнери и да стартирате CUDA програми на вашия NVIDIA GPU.



Съдържание:

  1. Проверка дали официалните драйвери на NVIDIA GPU са инсталирани на Ubuntu 22.04
  2. Инсталиране на зависимости на Docker CE на Ubuntu 22.04
  3. Инсталиране на Docker CE GPG ключове на Ubuntu 22.04
  4. Инсталиране на Docker CE Repository на Ubuntu 22.04
  5. Инсталиране на Docker CE на Ubuntu 22.04
  6. Добавяне на потребител за влизане в Ubuntu 22.04 LTS към докер групата
  7. Проверка дали Docker CE е инсталиран правилно на Ubuntu 22.04
  8. Инсталиране на GPG ключове на NVIDIA Container Toolkit на Ubuntu 22.04
  9. Инсталиране на NVIDIA Container Toolkit Repository на Ubuntu 22.04
  10. Инсталиране на драйвери на nvidia-docker на Ubuntu 22.04
  11. Проверка дали NVIDIA GPU е достъпен от Docker контейнери в Ubuntu 22.04
  12. Заключение
  13. Препратки

Проверка дали официалните драйвери на NVIDIA GPU са инсталирани на Ubuntu 22.04 LTS:

Преди да започнете, изпълнете следната команда, за да проверите дали имате NVIDIA GPU инсталиран на вашия компютър.



$ lspci | егреп 'vga|3d|дисплей'





В този случай имам NVIDIA GTX 1050 Ti GPU инсталиран на моя компютър. Най-вероятно ще имате различен NVIDIA GPU инсталиран на вашия компютър.


Също така се уверете, че имате инсталирани официални драйвери на NVIDIA на вашата операционна система Ubuntu 22.04 със следната команда:



$ lsmod | хватка nvidia

Ако официалните драйвери на NVIDIA са инсталирани на вашата операционна система Ubuntu 22.04, ще видите следните резултати.


Също така проверете дали официалните драйвери на NVIDIA GPU работят със следната команда:

$ nvidia-smi

Ако официалните драйвери на NVIDIA GPU работят, ще видите следните резултати. Както можете да видите, имам официалния NVIDIA GPU драйвер версия 525.78.01, инсталиран на моята машина с Ubuntu 22.04.


Ако нямате инсталирани официални драйвери на NVIDIA GPU на вашата машина с Ubuntu 22.04 и имате нужда от помощ за това, моля, проверете статията .

Инсталиране на зависимости на Docker CE на Ubuntu 22.04 LTS:

Преди да можете да инсталирате Docker CE на Ubuntu 22.04, ще трябва да инсталирате необходимите пакети за зависимости на Docker CE на Ubuntu 22.04.

Първо актуализирайте кеша на хранилището на APT пакети със следната команда:

$ sudo подходяща актуализация

Кешът на хранилището на APT пакети трябва да се актуализира.


За да инсталирате необходимите пакети за зависимости на Docker CE, изпълнете следната команда:

$ sudo apt-get инсталирайте ca-сертификати curl gnupg lsb-издание

За да потвърдите инсталацията, натиснете И и след това натиснете .


Необходимите пакети за зависимости на Docker CE трябва да бъдат инсталирани.

Инсталиране на Docker CE GPG ключове на Ubuntu 22.04 LTS:

В този раздел ще ви покажа как да инсталирате GPG ключа на хранилището на пакети Docker CE на Ubuntu 22.04.

Първо създайте нова папка /etc/apt/keyrings със следната команда:

$ sudo mkdir -стр / и т.н / ап / ключодържатели

За да инсталирате GPG ключа на хранилището на пакети Docker CE на Ubuntu 22.04, изпълнете следната команда:

$ къдрица -fsSL https: // download.docker.com / linux / ubuntu / gpg | sudo gpg --мило / и т.н / ап / ключодържатели / docker.gpg

Инсталиране на Docker CE Repository на Ubuntu 22.04 LTS:

За да инсталирате хранилището на пакети Docker CE на Ubuntu 22.04, изпълнете следната команда:

$ ехо 'deb [арх= $(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) стабилен' | sudo тениска / и т.н / ап / източници.списък.d / docker.list > / разработка / нула

Актуализирайте кеша на хранилището на APT пакети, за да влязат в сила промените.

$ sudo подходяща актуализация


Инсталиране на Docker CE на Ubuntu 22.04 LTS:

За да инсталирате най-новата версия на Docker CE на Ubuntu 22.04, изпълнете следната команда:

$ sudo apt-get инсталирайте docker-ce docker-ce-cli containerd.io docker-compose-plugin

За да потвърдите инсталацията, натиснете И и след това натиснете .


Docker CE и необходимите пакети за зависимости се изтеглят. Завършването ще отнеме известно време.


Docker CE и необходимите пакети за зависимости се инсталират. Завършването ще отнеме известно време.


Docker CE и необходимите пакети за зависимости трябва да бъдат инсталирани на този етап.

Добавяне на потребител за влизане в Ubuntu 22.04 LTS към докер групата:

За да създадете Docker контейнери и да ги управлявате, без да използвате sudo или да сте влезли като root потребител, ще трябва да добавите своя потребител за вход към докер група.

За да добавите потребителя за вход на вашия Ubuntu 22.04 към докер група, изпълнете следната команда:

$ sudo потребителски мод -aG докер $ ( кой съм аз )

За да влязат в сила промените, рестартирайте компютъра със следната команда:

$ sudo рестартирайте

Проверка дали Docker CE е инсталиран правилно на Ubuntu 22.04 LTS:

След като компютърът ви стартира, изпълнете следната команда, за да проверите дали имате достъп до Docker без привилегии на суперпотребител.

$ докер версия

Ако всичко работи, трябва да видите следните резултати.

Както можете да видите, използвам Docker версия 20.10.23 – най-новата версия на Docker CE към момента на писане.

Инсталиране на GPG ключове на NVIDIA Container Toolkit на Ubuntu 22.04:

В този раздел ще ви покажа как да инсталирате GPG ключа на хранилището на пакети NVIDIA Container Toolkit на Ubuntu 22.04.

За да инсталирате GPG ключа на хранилището на пакета NVIDIA Container Toolkit на Ubuntu 22.04, изпълнете следната команда:

$ къдрица -fsSL https: // nvidia.github.io / libnvidia-контейнер / gpgkey | sudo gpg --мило / usr / дял / ключодържатели / nvidia-container-toolkit-keyring.gpg

Инсталиране на хранилището на NVIDIA Container Toolkit на Ubuntu 22.04 LTS:

В този раздел ще ви покажа как да инсталирате хранилището на пакети NVIDIA Container Toolkit на Ubuntu 22.04.

Първо създайте нов APT изходен файл nvidia-container-toolkit.list в /etc/apt/sources.list.d/ директория, както следва:

$ sudo нано / и т.н / ап / източници.списък.d / nvidia-container-toolkit.list

В nvidia-container-toolkit.list файл, добавете следния ред и натиснете + х следван от И и за да запазите файла.

че [ подписано от= / usr / дял / ключодържатели / nvidia-container-toolkit-keyring.gpg ] https: // nvidia.github.io / libnvidia-контейнер / стабилен / безплатно22.04 / $ ( АРХ ) /



Ако използвате Ubuntu 20.04 LTS, всичко, което трябва да направите, е да добавите следния ред в nvidia-container-toolkit.list файл вместо това и всичко останало трябва да работи непроменено.

че [ подписано от= / usr / дял / ключодържатели / nvidia-container-toolkit-keyring.gpg ] https: // nvidia.github.io / libnvidia-контейнер / стабилен / безплатно20.04 / $ ( АРХ ) /


Ако използвате Ubuntu 18.04 LTS, всичко, което трябва да направите, е да добавите следния ред в nvidia-container-toolkit.list файл вместо това и всичко останало трябва да работи непроменено.

че [ подписано от= / usr / дял / ключодържатели / nvidia-container-toolkit-keyring.gpg ] https: // nvidia.github.io / libnvidia-контейнер / стабилен / безплатно18.04 / $ ( АРХ ) /


За да влязат в сила промените, актуализирайте кеша на хранилището на APT пакети със следната команда:

$ sudo подходяща актуализация


Инсталиране на драйвери на nvidia-docker на Ubuntu 22.04 LTS:

За да инсталирате драйверите на NVIDIA Docker на Ubuntu 22.04, изпълнете следната команда:

$ sudo ап Инсталирай nvidia-docker2

За да потвърдите инсталацията, натиснете И и след това натиснете .


Докер драйверите на NVIDIA трябва да бъдат инсталирани.


За да влязат в сила промените, рестартирайте компютъра със следната команда:

$ sudo рестартирайте

Проверка дали NVIDIA GPU е достъпен от Docker контейнери в Ubuntu 22.04 LTS:

В този раздел ще ви покажа как да създадете NVIDIA CUDA Docker контейнер и проверете дали контейнерът има достъп до NVIDIA GPU от вашия компютър.

За да създадете NVIDIA CUDA 12 Docker контейнер на базата на Ubuntu 20.04 LTS и да стартирате nvidia-smi команда в нея, след като бъде създадена, за да проверите дали има достъп до NVIDIA GPU от вашия компютър, изпълнете следната команда:

$ докер изпълнение --rm --gpus всички nvidia / cuda:12.0.0-база-ubuntu20.04 nvidia-smi

Докер дърпа nvidia/cuda:12.0.0-база-ubuntu20.04 изображение от Docker Hub. Завършването ще отнеме известно време.


След като изображението на докер NVIDIA CUDA бъде изтеглено и е създаден контейнер, nvidia-smi ще се изпълни на него и ще отпечата изхода на конзолата, както можете да видите на екранната снимка по-долу.

Контейнерът Docker използва NVIDIA GPU драйвер 525.78.01 [1] и на CUDA версия 12.0 [2] . Ако видите подобни изходи, тогава контейнерът на Docker има достъп до NVIDIA GPU на вашия компютър.


Ако трябва да използвате по-стари версии на CUDA, проверете .

Заключение:

В тази статия ви показах как да настроите хранилището на пакети Docker CE на Ubuntu 22.04. Също така ви показах как да инсталирате най-новата версия на Docker CE на Ubuntu 22.04. Показах ви как да инсталирате хранилището на пакети NVIDIA Container Toolkit на Ubuntu 22.04, както и как да инсталирате драйвера NVIDIA Docker на Ubuntu 22.04. Накрая ви показах как да получите достъп до NVIDIA GPU на вашия компютър от Docker контейнер.

Препратки: