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

docker 运行NVIDIA并启动cuda

1. 检查 NVIDIA Container Toolkit 是否已安装

运行以下命令检查 nvidia-container-runtime 是否已安装:

dpkg -l | grep -i nvidia-container

如果没有输出或未安装,请重新安装 NVIDIA Container Toolkit:

distribution=$(. /etc/os-release;echo $ID$VERSION_ID) \
    && curl -s -L https://nvidia.github.io/nvidia-container-runtime/gpgkey | sudo apt-key add - \
    && curl -s -L https://nvidia.github.io/nvidia-container-runtime/$distribution/nvidia-container-runtime.list | sudo tee /etc/apt/sources.list.d/nvidia-container-runtime.list \
    && sudo apt-get update \
    && sudo apt-get install -y nvidia-container-runtime

然后重启 docker

sudo systemctl restart docker

2. 检查 NVIDIA Runtime 是否在 Docker 配置中

运行以下命令检查 daemon.json 文件:

cat /etc/docker/daemon.json

如果输出中没有 "runtimes" 相关的 nvidia 配置,则需要手动添加。

添加 NVIDIA 运行时到 Docker

如果 daemon.json 文件不存在,可以创建它,并添加以下内容:

sudo tee /etc/docker/daemon.json <<EOF
{
  "runtimes": {
    "nvidia": {
      "path": "/usr/bin/nvidia-container-runtime",
      "runtimeArgs": []
    }
  }
}
EOF

然后重启 Docker 使更改生效:

sudo systemctl restart docker

3. 验证 NVIDIA 运行时

重启 Docker 之后,运行以下命令验证 NVIDIA 运行时是否已正确配置:

docker info | grep -i runtime

你应该会看到 nvidia 运行时的相关信息:

 Runtimes: runc nvidia
 Default Runtime: runc

如果 nvidia 运行时没有出现,请确保 nvidia-container-runtime 仍然安装,并尝试重启服务器:

sudo reboot

4. 测试 NVIDIA Docker

重新运行以下命令,确认 nvidia 运行时是否可用:

docker run --rm --gpus all nvidia/cuda:12.4-base nvidia-smi

如果命令成功运行,你会看到类似以下的输出:

+-----------------------------------------------------------------------------+
| NVIDIA-SMI 550.127.08              Driver Version: 550.127.08     CUDA Version: 12.4 |
|-------------------------------+----------------------+----------------------+
| GPU  Name        Persistence-M | Bus-Id      Disp.A  | Volatile Uncorr. ECC |
| Fan  Temp   Perf  Pwr:Usage/Cap | Memory-Usage       | GPU-Util  Compute M. |
+-------------------------------+----------------------+----------------------+

总结

如果遇到 unknown or invalid runtime name: nvidia 错误,按照以下步骤修复:

  1. 检查 NVIDIA Container Runtime 是否已安装 (dpkg -l | grep -i nvidia-container)
  2. 确保 /etc/docker/daemon.json 包含 nvidia 运行时配置
  3. 重启 Docker (systemctl restart docker) 并检查 docker info
  4. 测试 docker run --rm --gpus all nvidia/cuda:12.4-base nvidia-smi

如果问题依然存在,请告诉我具体的错误信息,我可以帮助你进一步排查!


http://www.kler.cn/a/543008.html

相关文章:

  • Flutter项目试水
  • 机器学习10-卷积和卷积核3
  • 使用 Flask 构建流式返回服务
  • 香港中文大学 Adobe 推出 MotionCanvas:开启用户掌控的电影级图像视频创意之旅。
  • carbon 加入 GitCode:Golang 时间处理的 “瑞士军刀”
  • 借助 ListWise 提升推荐系统精排效能:技术、案例与优化策略
  • 2.11学习记录
  • 【EXCEL】【VBA】处理GI Log获得Surf格式的CONTOUR DATA
  • PostgreSQL错误: 编码“UTF8“的字符0x0xe9 0x94 0x99在编码“WIN1252“没有相对应值
  • 【EXCEL】【VBA】最大值行索引查找与Z字形数据重排
  • kamailio关于via那点事
  • 将 AMD Zynq™ RFSoC 扩展到毫米波领域
  • 软件工程-决策树决策表
  • Unity 打造游戏资源加密解密系统详解
  • ElementUI的<el-image>组件引用网络图片加载失败
  • 从词袋到Transformer:自然语言处理的演进与实战
  • Maven 多模块项目管理
  • 回溯---相关习题,经验总结
  • DeepSeek-V2 论文解读:混合专家架构的新突破
  • 青少年编程与数学 02-009 Django 5 Web 编程 07课题、数据迁移
  • 从零构建高可用MySQL集群:Percona XtraDB Cluster 实战部署
  • 《qt open3d中添加最远点采样》
  • STM32 如何将printf函数和串口函数重定向
  • Redis主从复制高延迟问题解决思路
  • 【Elasticsearch】Bucket Selector Aggregation
  • 微信小程序的behaviors和vuex功能对比