NVIDIA Container Toolkit 安装与配置帮助文档(Ubuntu,Docker)

打印 上一主题 下一主题

主题 1737|帖子 1737|积分 5211

NVIDIA Container Toolkit 安装与配置帮助文档(Ubuntu,Docker)

本文档具体先容了在 Ubuntu Server 22.04 上利用 Docker 安装和配置 NVIDIA Container Toolkit 的过程。
概述

NVIDIA 容器工具包利用户可以大概构建和运行 GPU 加速容器。即可以在容器中利用NVIDIA显卡。
架构图如下:


目录


  • 前提条件
  • 安装 NVIDIA Container Toolkit
  • 配置 Docker 以利用 NVIDIA 容器运行时
  • 验证配置

前提条件


  • 安装了容器引擎(Docker)。
  • 安装了 NVIDIA Container Toolkit。
安装 NVIDIA Container Toolkit


  • 配置生产存储库:
  1.     curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg
  2.     curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
复制代码
作用:从 NVIDIA 官方网站下载 GPG 密钥并将其转换为适合 APT 利用的格式,然后下载 NVIDIA 容器工具包的 APT 源列表,并将其配置为利用之前下载的 GPG 密钥举行签名验证。

  • (可选)配置存储库以利用实行性软件包:
  1.     sed -i -e '/experimental/ s/^#//g' /etc/apt/sources.list.d/nvidia-container-toolkit.list
复制代码
作用:启用实行性软件包源。这条下令将源列表文件中关于实行性软件包的行前面的解释符号(#)去掉,从而启用该源。

  • 从存储库更新软件包列表:
  1.     sudo apt-get update
复制代码
作用:更新 APT 包管理器的包列表,使其包含新添加的 NVIDIA 容器工具包源中的软件包。

  • 安装 NVIDIA Container Toolkit 软件包:
  1.     sudo apt-get install -y nvidia-container-toolkit
复制代码
作用:安装 NVIDIA 容器工具包。
配置 Docker 以利用 NVIDIA 容器运行时


  • 配置容器运行时:
  1.     sudo nvidia-ctk runtime configure --runtime=docker
复制代码
作用:利用 nvidia-ctk 下令配置 Docker 以利用 NVIDIA 容器运行时。这条下令会修改 /etc/docker/daemon.json 文件。


  • 实行下令后的返回结果:
  1.       WARN[0000] Ignoring runtime-config-override flag for docker
  2.       INFO[0000] Config file does not exist; using empty config
  3.       INFO[0000] Wrote updated config to $HOME/.config/docker/daemon.json
  4.       INFO[0000] It is recommended that docker daemon be restarted.
复制代码
解释
- WARN[0000] Ignoring runtime-config-override flag for docker:忽略 runtime-config-override 标记。
- INFO[0000] Config file does not exist; using empty config:配置文件不存在,利用空配置。
- INFO[0000] Wrote updated config to $HOME/.config/docker/daemon.json:已将更新后的配置写入到指定文件。
- INFO[0000] It is recommended that docker daemon be restarted:建议重启 Docker 保卫进程。

  • 重新启动 Docker 保卫进程:
  1.     sudo systemctl restart docker
复制代码
作用:重新启动 Docker 保卫进程,以使配置更改生效。
验证配置

运行以下下令以验证 Docker 是否精确配置 NVIDIA 容器运行时:
  1. sudo docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi
复制代码
输出
  1. Unable to find image 'ubuntu:latest' locally
  2. latest: Pulling from library/ubuntu
  3. d19f32bd9e41: Pull complete
  4. Digest: sha256:34fea4f31bf187bc915536831fd0afc9d214755bf700b5cdb1336c82516d154e
  5. Status: Downloaded newer image for ubuntu:latest
  6. Thu Jul 18 13:40:28 2024      
  7. +---------------------------------------------------------------------------------------+
  8. | NVIDIA-SMI 535.183.01             Driver Version: 535.183.01   CUDA Version: 12.2     |
  9. |-----------------------------------------+----------------------+----------------------+
  10. | GPU  Name                 Persistence-M | Bus-Id        Disp.A | Volatile Uncorr. ECC |
  11. | Fan  Temp   Perf          Pwr:Usage/Cap |         Memory-Usage | GPU-Util  Compute M. |
  12. |                                         |                      |               MIG M. |
  13. |=========================================+======================+======================|
  14. |   0  NVIDIA GeForce RTX 3090        Off | XXXXXXXX:XX:XX.X Off |                  N/A |
  15. | 34%   25C    P8              19W / 350W |      1MiB / 24576MiB |      0%      Default |
  16. |                                         |                      |                  N/A |
  17. +-----------------------------------------+----------------------+----------------------+
  18. |   1  NVIDIA GeForce RTX 3090        Off | XXXXXXXX:XX:XX.X Off |                  N/A |
  19. | 32%   25C    P8               7W / 350W |      1MiB / 24576MiB |      0%      Default |
  20. |                                         |                      |                  N/A |
  21. +-----------------------------------------+----------------------+----------------------+
  22.                                                                                          
  23. +---------------------------------------------------------------------------------------+
  24. | Processes:                                                                            |
  25. |  GPU   GI   CI        PID   Type   Process name                            GPU Memory |
  26. |        ID   ID                                                             Usage      |
  27. |=======================================================================================|
  28. |  No running processes found                                                           |
  29. +---------------------------------------------------------------------------------------+
复制代码
图示说明:该输出结果显示了 GPU 的具体信息,包括型号、温度、功率利用情况和内存利用情况等。这表明 Docker 容器成功地访问到了 NVIDIA GPU,并且 NVIDIA Container Toolkit 安装和配置成功。

通过以上步骤,你可以成功安装和配置 NVIDIA Container Toolkit,并可以大概在 Docker 容器中运行 GPU 加速的应用程序。如果在实行过程中遇到任何问题,请随时联系以获得进一步帮助。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

千千梦丶琪

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表