【跳坑日记-成功解决】docker使用GPU报错:could not select device driver ““ with capabilities: [[gpu]]

ubuntu下docker: Error response from daemon: could not select device driver with capabilities: [[gpu]] docker: Error response from daemon: could not select device driver with capabilities: [[gpu]] 阅读详情
AI摘要

在搭建RAG知识库用Ollama和open - webui框架时,执行docker命令利用本机GPU加速报错。介绍了本机运行环境,最终解决问题,使open - webui可在GPU稳定运行。解决办法是参考英伟达官网安装NVIDIA Container Toolkit,重新执行docker命令不再报错。

缘起(报错信息):

在搭建RAG知识库的过程中,用到Ollama框架,在使用其推荐框架open-webui时,想利用本机自带GPU进行加速,于是执行docker命令docker run -d -p 3000:8080 --gpus all -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:cuda
在执行过程中出现如下报错:

Error response from daemon: could not select device driver ““ with capabilities: [[gpu]]

以上是报错发生的过程。

运行环境:

介绍下本机运行环境:

项目参数
系统Ubuntu 20.04.6 LTS
docker版本27.2.1
显卡型号NVIDIA GeForce RTX 3060

解决过程

先说结论:问题已经解决,open-webui可以在GPU上稳定运行。
下面总结一下解决过程:
首先在优快云上找到了报错解决方案——参考3.
提到安装英伟达显卡容器,但是直接复制博客里面的代码会报错。因此找到英伟达官方网站进行安装——参考4.
在此贴上省流步骤:
1、配置生产存储库:

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、(可选)将存储库配置为使用实验性软件包:

sed -i -e '/experimental/ s/^#//g' /etc/apt/sources.list.d/nvidia-container-toolkit.list

3、从存储库更新软件包列表:

sudo apt-get update

4、安装 NVIDIA Container Toolkit 软件包:

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

此时,重新执行docker命令,将不会报错。

以上就是该问题的完全解决过程,希望对你有所帮助。也欢迎点赞加收藏,感谢。

参考

  1. Ollama框架
  2. open-webui框架
  3. 解决关于Docker运行容器使用GPU资源时的异常:could not select device driver ““ with capabilities: [[gpu]]
  4. Installing the NVIDIA Container Toolkit
docker: Error response from daemon: could not select device driver ““ with capabilities: [[gpu]]问题解决 我们知道,想要在 docker19 及之后的版本中使用 nvidia gpu 已经不需要单独安装 nvidia-docker 了,这已经被集成到了 docker 中。另外需要注意的是,这个东西是不能直接 apt install,会报找不到该软件,需要先添加英伟达的 apt 软件源。相必大家也知道,要使用宿主机的 GPU,需要在 docker run 的时候添加 --gpus [xxx] 参数。实际上,我们在通过 --gpus 参数来使用宿主机的 GPU 时,需要先安装一个英伟达的容器运行。 阅读详情

相关推荐

docker: Error response from daemon: could not select device driver ““ with capabilities: [[gpu]].

docker使用GPU出现问题怎么解决?缺少某个库,安装即可

NLP与推荐算法 5804

解决关于Docker运行容器使用GPU资源时的异常:could not select device driver ““ with capabilities: [[gpu]]

解决关于Docker运行容器使用GPU资源时的异常:could not select device driver ““ with capabilities: [[gpu]]

积跬步,至千里。 3万+

本地大模型部署实战:LM Studio与Ollama的易用性与性能深度评测

本文对两款主流本地大模型部署工具LM Studio和Ollama进行了深度评测。LM Studio凭借图形化界面和内置模型库,为新手提供了开箱即用的便捷体验,并支持OpenAI兼容API,易于生态集成。Ollama则以命令行驱动,轻量高效,凭借其原生API和Modelfile自定义能力,在自动化集成和性能方面表现突出。文章从易用性、模型生态、性能及扩展性多维度对比,帮助用户根据自身技术背景和使用场景做出最佳选择。

weixin_29039773的博客 528

docker跑gpu报错Error response from daemon: could not select device driver ““ with capabilities: [[gpu]]

如果提示已经存在了(之前未成功但占用了名字的),

子弹头 7695

从零到一:uniPush2.0全链路集成与多厂商通道配置实战

本文提供了uniPush2.0从零开始的全链路集成与多厂商通道配置实战指南。详细讲解了DCloud平台配置、uniCloud云函数开发、客户端CID获取与消息监听,并重点攻克了华为、小米、OPPO、vivo等主流厂商推送通道的配置难点与避坑技巧,帮助UniApp开发者实现“一次集成,全端覆盖”的高效消息推送方案。

onion的博客 431

手把手教你设计反激开关电源:从整流滤波到PCB布局的实战避坑指南

本文是一份反激开关电源的实战设计指南,重点解析了从整流滤波电路到PCB布局的关键细节与常见陷阱。文章深入探讨了输入保护元件协同设计、EMI滤波器优化、整流桥与滤波电容选型,并详细阐述了如何通过优化PCB布局来确保安规、最小化功率回路面积以控制噪声,旨在帮助工程师和爱好者规避设计误区,提升电源的可靠性与性能。

yhn45678901的博客 692

docker: Error response from daemon: could not select device driver的原因及解决办法

Verify that Docker Engine is installed correctly命令中抛出docker: Error response from daemon: could not select device driver的原因及解决办法

Uzw的博客 1万+

C51编程25-应用篇(单片机与电脑端实现wifi通讯)

单片机使用ESP-01S wifi模块与电脑端进行数据通讯。

qq_34343637的博客 1万+

解决docker: Error response from daemon: could not select device driver ““ with capabilities: [[gpu]].

4步解决docker容器无法调用gpu的报错 docker: Error response from daemon: could not select device driver "" with capabilities: [[gpu]].

ZhouDevin的博客 8826

SerDes学习笔记:接收机CTLE均衡架构示例(USB3.1、PCIe3.0\4.0\5.0)

本文分析了USB3.1和PCIe标准中连续时间线性均衡器(CTLE)的设计演进。USB3.1Gen1采用一阶CTLE,其传递函数在长信道下具有有源滤波器特性;Gen2版本延续类似架构,通过Adc参数调节零点频率。PCIeGen3/4保持一阶结构但调整极点位置,Gen5升级为二阶传递函数,扩展Adc调节范围至-5dB~-15dB。研究表明,CTLE能有效改善信号完整性,通过参数优化可平衡信号衰减与码间干扰抑制。

一只豌豆象的博客 624

《SOC架构-ARM架构-文档导读》-目录

小白请看“Armv8/Armv9架构从入门到精通”专栏。以翻译为主的,深度深度深度深度/深入深入深入 学习ARM架构的文章。

baron-周贺贺-代码改变世界ctw 2083

docker: Error response from daemon: could not select device driver with capabilities: [[gpu]]问题记录解决

如果显示的是WARNING:No swap limit support或者什么都没显示,就说明是nvidia驱动程序没有被docker daemon使用,这个时候有点麻烦,可能是因为/etc/docker/daemon.json配置文件没配置对,也可能是docker没安装好。如果显示"nvidia:yes"或者有其他正常显示,就说明docker daemon正在使用nvidia驱动程序,这个时候使用--gpus=all选项是不会报错的。检查docker是否正确安装,用下面命令。在当前目录位置创建一个脚本。

civiljiao的博客 6390

Coze智能体开发:扣子空间制作PPT功能

扣子空间内置了丰富的场景模板,涵盖人文历史、学术分享、研究报告、数据分析等场景,可以满足不同用户的需求。 你只需输入与制作 PPT 相关的提示词,Agent 就能基于这些提示词展示思考的过程,并自动生成完整的 PPT。

王国平的博客 2052

docker创建容器报错Error response from daemon: could not select device driver ““ with capabilities: [[gpu]]

docker容器创建是GPU报错Error response from daemon: could not select device driver "" with capabilities: [[gpu]]

ph12345687的博客 5733

保姆级YOLOv8改进 | 基于DWRSeg扩张式残差机制的小目标检测优化(附修改后的C2f与Bottleneck模块)

DWRSeg机制:通过动态权重调整和扩张卷积有效提升了小目标的检测能力。C2f和Bottleneck模块修改:通过集成DWRSeg模块,增强了特征提取和残差学习能力。实验结果:在多个应用场景中,改进后的YOLOv8展现了更高的检测精度,特别是在小目标检测中表现突出。

一键难忘的博客 3216

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

docker gpu报错Error response from daemon: could not select device driver ““ with capabilities: [[gpu]]

Docker容器中使用Nvidia GPU报错 docker: Error response from daemon: could not select device driver “” with capabilities: [[gpu]]. 问题出现 我们知道,想要在 docker19 及之后的版本中使用 nvidia gpu 已经不需要单独安装 nvidia-docker 了,这已经被集成到了 docker 中。 相必大家也知道,要使用宿主机的 GPU,需要在 docker run 的时候添加 --gp

weixin_44966641的博客 3万+

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

解决could not select device driver...gpu问题

Error response from daemon: could not select device driver "" with capabilities: [[gpu]].

学如逆水行舟,不进则退 3554

IMSL CNL 7.0.0 (x86-64)Crack

IMSL CNL 7.0.0 (x86-64)Crack intel的算法库破解文件,这是C++版本的破解文件

Data-Structures-and-Algorithm-Analysis-in-Java.pdf

作者: Weiss, Mark A. 出版社: Addison Wesley Data Structures and Algorithm Analysis in Java is an “advanced algorithms” book that fits between traditional CS2 and Algorithms Analysis courses. In the old ACM Curriculum Guidelines, this course was known as CS7. This text is for readers who want to learn good programming and algorithm analysis skills simultaneously so that they can develop such programs with the maximum amo...

docker: Error response from daemon: could not select device driver ““ with capabilities: [[gpu]]

报错:docker: Error response from daemon: could not select device driver “” with capabilities: [[gpu]].参考:https://blog.youkuaiyun.com/felton_cool/article/details/134327204。前面安装后可能会导致之前的/etc/docker/daemon.json 文件内容会丢失失效;因为前面更改过默认路径,所以/etc/docker/daemon.json 重新写上。

weixin_42357472的博客 2496

(解决方案)docker could not select device driver |Docker 无法成功分配或访问GPU资源

解决 docker 找不到驱动/GPU,报错 docker: Error response from daemon: could not select device driver "" with capabilities: [[gpu]]. ERRO[0000] error waiting for container: context canceled

weixin_44212848的博客 5712

解决docker: Error response from daemon: could not select device driver ““ with capabilitie

NVIDIA Docker已经更新为NVIDIA Container Runtime,建议使用新的工具。确保您的系统已经安装了正确版本的NVIDIA驱动。官方cuda安装地址。

lu6603547的博客 2156

打开容器nvidia-container报错或Error response from daemon could not select device driver with capabilities

docker driver nvidia-container

ghy_111的博客 5349

Docker:Error response from daemon: could not select device driver ““ with capabilities: [[gpu]]

文章目录1. 问题描述 1. 问题描述 Error response from daemon: could not select device driver ““ with capabilities: [[gpu]] 本机运行镜像容器报错:找不到GPU。通常问题在于执行程序需要GPU,但是镜像中是没有GPU的,只能调用 ...

Liu Feng's Blog 1582

Error response from daemon: could not select device driver ““ with capabilities: [[gpu]]

报错含义呐就是上述三个包,没有获取到(因为大家熟知的网络原因)。确保安装了 NVIDIA Docker 运行时。确保 NVIDIA 驱动已正确安装并正常运行。如果能正常显示驱动信息,则驱动已安装。编辑 Docker 配置文件。重启完后就可以正常使用了。

gy77 2023
上一篇: 【翻译】人脸表情识别工具包,附个人总结:AFFDEX SDK: A Cross-Platform RealTime Multi-Face Expression Recognition Toolkit
下一篇: 【跳坑日记】Jetson 6.2 编译cuda-sample报错:No CMAKE_CUDA_COMPILER could be found
黑符石
博客等级 码龄10年 489粉丝 44原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

黑符石

感谢小主对原创的大力支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值