当前位置: 首页 > news >正文

[nvidia docker]

  1. nvidia-smi可以执行;
  2. docker

好的,看到你的 nvidia-smi 输出非常清晰,这说明 WSL2 已经能够正确识别和使用你的 NVIDIA GPU 了。
这是一个非常好的信号!问题 100% 出在 Docker 的配置上。Docker 守护进程还不知道如何调用这个 GPU。
我们直接进入正题,按照最有效的步骤来修复它。
✅ 解决方案:三步修复法
请在你的 WSL2 终端中,严格按照顺序执行以下命令。
第 1 步:安装/重装 NVIDIA Container Toolkit
即使你之前装过,也请重新执行一遍,这能确保万无一失。

1. 添加官方 GPG key 和仓库

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

2. 更新包列表

sudo apt-get update

3. 安装工具包

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

第 2 步:配置 Docker 并重启服务
这是最关键的一步,它会告诉 Docker “nvidia” 运行时在哪里。

1. 配置 Docker 守护进程,让它知道 nvidia 运行时

sudo nvidia-ctk runtime configure --runtime=docker

2. 重启 Docker 服务以应用配置

sudo systemctl restart docker

⚠️ 特别注意:
如果 sudo systemctl restart docker 命令报错,请先执行 sudo systemctl unmask docker,然后再重新运行 sudo systemctl restart docker。
第 3 步:验证 Docker 是否能使用 GPU
现在,我们来测试一下 Docker 是否已经修复。

docker run --rm --gpus all nvidia/cuda:12.1.0-base-ubuntu22.04 nvidia-smi

预期结果:
这个命令会下载一个小的 CUDA 镜像(如果本地没有的话),然后在容器内执行 nvidia-smi。如果成功,你会在终端里看到和你之前运行 nvidia-smi 几乎一模一样的 GPU 信息输出。
🎯 最后一步:重新运行你的项目
如果上面的验证命令成功了,那么你的问题就已经解决了。现在可以放心地启动你的项目了:

docker-compose -f docker-compose.gpu.yml up -d

这次应该就不会再报 unknown or invalid runtime name: nvidia 的错误了。
💡 如果验证命令仍然失败
如果 docker run --rm --gpus all ... 命令还是报同样的错,请检查一下 Docker 的配置文件:

cat /etc/docker/daemon.json

它的内容应该包含类似下面的 runtimes 部分:

{"default-runtime": "nvidia","runtimes": {"nvidia": {"path": "nvidia-container-runtime","runtimeArgs": []}}
}

如果这个文件里没有 runtimes 部分,说明第 2 步的配置命令没有成功执行,请仔细检查命令是否有报错信息。
请先按照“三步修复法”操作,然后把验证命令的结果告诉我。 我相信这能解决你的问题!

http://www.jsqmd.com/news/17220/

相关文章:

  • vite插件——vite-plugin-inspect
  • ceph管理后台dashboard部署
  • CRMEB标准版订单核销的业务逻辑
  • 内外网文件摆渡系统有哪些?一文读懂主流方案与选型方向
  • mysql 更新默认时间
  • autohotkey 控制输入法
  • 【最新推荐】分享十大常用又靠谱的文件摆渡系统
  • C语言实现LDPC码译码功能
  • 关系型数据库的基本理论
  • [NOIP 2012 提高组] 开车旅行 的AC代码
  • Voice Chat: Resolving Lag and Stuttering with a Jitter Buffer
  • 2025 年报警器经销商最新推荐榜单:全面剖析海湾、青鸟等品牌服务商优势,为您筛选优质可靠合作伙伴燃气 / 太阳能 / 交通道路报警器推荐
  • 2025 年报警器经销商最新推荐榜单:全面剖析海湾、青鸟等品牌服务商优势,为您筛选优质可靠合作伙伴燃气 / 太阳能 / 交通道路报警器推荐
  • 解决IDEA引入依赖报错
  • 线性DP,区间DP
  • 2025年10月企业数字化转型服务商推荐:对比评测排行榜单深度解析
  • 01-02GPIO-LED闪灯实验
  • 2025年10月超声波清洗机厂家推荐:十强对比评测榜
  • 完整教程:【Hive】基于物品协同过滤 [ ItemCF ] 推荐课程-余弦相似度计算
  • 本周精选 - jobleap4u.com - 2025.10.20
  • Impulse Noise(图像脉冲噪音)的抑制和处理方法(提取自《现代图像处理算法教程》一书并做解释)。
  • 2025年10月超声波清洗机厂家推荐:十强对比评测榜助您高效选型
  • CF2123G Modular Sorting
  • 结构体
  • 专栏导航:《数据中心网络与异构计算:从瓶颈突破到架构革命》 - 实践
  • 2025年10月长白山旅游度假酒店推荐:五家热选对比排行与实用评测
  • CTFHub 信息泄露通关笔记9:Git泄露 Index - 指南
  • 2025年10月抗老面霜推荐:小鸟传领衔五强对比评测榜
  • 基于STM32芯片通过CAN总线控制电机运动
  • 2025 酒店家具厂家最新推荐榜:北木斋领衔五大新锐品牌,品质与创新双优之选全解析