收起左侧

Docker调用英伟达GPU标准方案

8
回复
712
查看
[ 复制链接 ]
2025-8-26 00:03:03 显示全部楼层 阅读模式

如果需要更好阅读模式,可以点击这里前往我博客

NVIDIA Container Toolkit方案介绍

NVIDIA Container Toolkit 是一个工具集,它允许在 Docker 或其他容器运行时(如 containerd, Podman)中轻松地运行支持 GPU 加速的容器。它本质上是容器运行时和主机上的 NVIDIA GPU 驱动程序之间的“桥梁”。

无缝体验: 使用简单的命令行标志(如 --gpus all)即可启用 GPU 支持,无需复杂的挂载命令。

环境一致性: 确保容器内的 CUDA 等环境与主机驱动兼容,避免了版本冲突问题。

安全隔离: 仍然遵循容器的安全模型,可以对容器可访问的 GPU 设备进行精细控制(例如,指定使用哪几块 GPU)。

生态兼容: 不仅支持 Docker,还支持 containerd、Podman、Kubernetes 等主流容器生态系统。

广泛适用: 是所有基于 NVIDIA GPU 的容器应用(如深度学习训练、推理、科学计算、图形渲染)的基础依赖。

准备工作

  1. 请确保您已经成功安装了驱动,可以参考此处
  2. 需要使用科学上网环境或自行配置全局代理

一、添加 NVIDIA Container Toolkit 仓库的 GPG 密钥和包源:

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg

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 Container Toolkit:

sudo apt-get update
sudo apt-get install -y nvidia-container-toolkit

三、 【按需】将 Docker 配置为默认使用 NVIDIA 运行时:

sudo nvidia-ctk runtime configure --runtime=docker

测试

可以拉取一个对应cuda版本的镜像例如

docker run -it --gpus all nvidia/cuda:12.2.2-devel-ubuntu22.04 /bin/bash

在容器内输入

nvidia-smi

你应当能够看到显卡信息则说明调用成功

收藏
送赞 1
分享
https://www.xiaozhuhouses.asia/欢迎访问我的博客

4

主题

40

回帖

0

牛值

初出茅庐

2025-9-6 13:21:03 显示全部楼层

毫无作用,DOCKER中的OLLAMA还是不调用GPU。。

2025-9-7 21:06:26 楼主 显示全部楼层
紫飞机 发表于 2025-9-6 13:21
毫无作用,DOCKER中的OLLAMA还是不调用GPU。。

什么显卡
tesla p4...  详情 回复
2025-9-8 14:05
https://www.xiaozhuhouses.asia/欢迎访问我的博客

4

主题

40

回帖

0

牛值

初出茅庐

2025-9-8 14:05:35 显示全部楼层
2025-9-8 16:21:39 楼主 显示全部楼层

容器内需要输入 nvidia-smi 命令看看是否正确显示
我使用应用市场的OLLAMA,并将其升级到最新版本,直接支持了GPU,并拉取了了QWEN3-8B模型。  详情 回复
2025-9-8 21:30
https://www.xiaozhuhouses.asia/欢迎访问我的博客

4

主题

40

回帖

0

牛值

初出茅庐

2025-9-8 21:30:00 显示全部楼层
月光微暖冬亦凉 发表于 2025-9-8 16:21
容器内需要输入 nvidia-smi 命令看看是否正确显示

我使用应用市场的OLLAMA,并将其升级到最新版本,直接支持了GPU,并拉取了了QWEN3-8B模型。
2025-9-9 10:35:16 楼主 显示全部楼层
紫飞机 发表于 2025-9-8 21:30
我使用应用市场的OLLAMA,并将其升级到最新版本,直接支持了GPU,并拉取了了QWEN3-8B模型。 ...

必须要输入这个命令检测 如果提示未知指令一般是容器没有英伟达驱动 如果有报错那就是容器没有调用显卡 具体要拉取一个英伟达官方的镜像兜底测试一下
https://www.xiaozhuhouses.asia/欢迎访问我的博客

1

主题

13

回帖

0

牛值

江湖小虾

2025-9-14 10:50:41 显示全部楼层

哎,试了好久。一直卡在了拉取构建cuda版本镜像那一步。总是提示权限不足。在可视化docker面板里也没法配置启动。

最后修改了下权限终于可以了cd /usr/lib/x86_64-linux-gnu && find . -type f -name 'lib*' -exec chmod 755 {} \;  详情 回复
2025-9-14 10:56

1

主题

13

回帖

0

牛值

江湖小虾

2025-9-14 10:56:19 显示全部楼层
苟富贵 发表于 2025-9-14 10:50
哎,试了好久。一直卡在了拉取构建cuda版本镜像那一步。总是提示权限不足。在可视化docker面板里也没法配置 ...

最后修改了下权限终于可以了cd /usr/lib/x86_64-linux-gnu && find . -type f -name 'lib*' -exec chmod 755 {} \;
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则