缘起(报错信息):
在搭建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上稳定运行。
下面总结一下解决过程:
首先在CSDN上找到了报错解决方案——参考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命令,将不会报错。
以上就是该问题的完全解决过程,希望对你有所帮助。也欢迎点赞加收藏,感谢。