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

Ubuntu 24.04 安装 NVIDIA Container Toolkit 全指南:让Docker拥抱GPU

Ubuntu 24.04 安装 NVIDIA Container Toolkit 全指南:让Docker拥抱GPU

    • 前言
    • 一、环境准备
      • 1.1 验证驱动状态
    • 二、安装NVIDIA Container Toolkit
      • 2.1 添加官方仓库
      • 2.2 执行安装
    • 三、配置Docker运行时
      • 3.1 更新Docker配置
    • 四、验证安装结果
      • 4.1 运行测试容器
    • 五、实战应用

前言

在使用Docker运行需要GPU加速的AI应用时,可能会遇到报错:
docker: Error response from daemon: could not select device driver "" with capabilities: [[gpu]]
这是因为缺少 NVIDIA Container Toolkit —— 它是让容器访问宿主GPU的关键桥梁。
本文将以Ubuntu 24.04 (Noble Numbat)为例,手把手教你完成完整安装流程。


一、环境准备

1.1 验证驱动状态

nvidia-smi

成功时会显示类似以下输出(注意右上角的CUDA版本)


二、安装NVIDIA Container Toolkit

2.1 添加官方仓库

# 安装依赖
sudo apt-get update
sudo apt-get install -y curl# 添加密钥和仓库
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.2 执行安装

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

三、配置Docker运行时

3.1 更新Docker配置

# 生成配置文件
sudo nvidia-ctk runtime configure --runtime=docker# 重启Docker服务
sudo systemctl restart docker

四、验证安装结果

4.1 运行测试容器

docker run --rm --gpus all nvidia/cuda:12.6.0-base-ubuntu24.04 nvidia-smi

成功时会看到与宿主机相同的GPU信息输出。


五、实战应用

现在可以运行你的GPU容器应用了!例如:

docker run --gpus all -p 8880:8880 ghcr.io/remsky/kokoro-fastapi-gpu:latest

技术总结:本文介绍了在Ubuntu 24.04中配置GPU容器支持的全流程,涵盖了驱动安装、工具链配置和验证测试。如果您在操作中遇到问题,欢迎在评论区留言讨论!

http://www.lryc.cn/news/529453.html

相关文章:

  • 17.Word:李楠-学术期刊❗【29】
  • 图漾相机——C++语言属性设置
  • 【性能优化专题系列】利用CompletableFuture优化多接口调用场景下的性能
  • docker安装emqx
  • DeepSeek超越ChatGPT的能力及部分核心原理
  • Leetcode 3434. Maximum Frequency After Subarray Operation
  • 《DeepSeek-R1 问世,智能搜索领域迎来新变革》
  • GEE | 植被总初级生产力GPP的时间变化特征
  • 安卓(android)饭堂广播【Android移动开发基础案例教程(第2版)黑马程序员】
  • 本地部署DeepSeek
  • 赛博算卦之周易六十四卦JAVA实现:六幺算尽天下事,梅花化解天下苦。
  • Hive:窗口函数(1)
  • docker安装nacos2.2.4详解(含:nacos容器启动参数、环境变量、常见问题整理)
  • 基于PLC的变频调速系统设计
  • 鸿蒙开发在onPageShow中数据加载不完整的问题分析与解决
  • 本地搭建deepseek-r1
  • 【数据结构与算法】AVL树的插入与删除实现详解
  • 【机器学习】自定义数据集 使用pytorch框架实现逻辑回归并保存模型,然后保存模型后再加载模型进行预测,对预测结果计算精确度和召回率及F1分数
  • unity学习23:场景scene相关,场景信息,场景跳转
  • AI(计算机视觉)自学路线
  • Linux第104步_基于AP3216C之I2C实验
  • 常用Android模拟器(雷电 MuMu 夜神 Genymotion 蓝叠) - 20250131
  • 算法题(53):对称二叉树
  • Golang 并发机制-2:Golang Goroutine 和竞争条件
  • 深入剖析 CSRF 漏洞:原理、危害案例与防护
  • C++和Python实现SQL Server数据库导出数据到S3并导入Redshift数据仓库
  • AI大模型开发原理篇-5:循环神经网络RNN
  • 4-图像梯度计算
  • 数据结构与算法 —— 常用算法模版
  • DDD - 领域事件_解耦微服务的关键