linux部署ragflow所遇到的问题(Ubuntu)

最近部署ragflow遇到不少问题,做个问题合集和我的解决方法。

运行ragflow的gpu版。
切换到ragflow文件:cd ……\ragflow-main\docker
运行docker compose -f docker-compose-gpu.yml up -d启动。

一、container ragflow-mysql is unhealthy

方法一:

参考链接https://github.com/infiniflow/ragflow/issues/1995
运行不了的将docker compose改成docker-compose(以下同理)

`sudo docker compose down -v` 
`sudo docker compose up`

我使用该方法未能解决

方法二:

修改docker-compose-base.yml文件,参考链接:https://blog.csdn.net/weixin_51397022/article/details/146570164
1.切换到ragflow文件:cd ……\ragflow-main\docker
2.sudo vim docker-compose-base.yml:添加image: mariadb:10.5.8privileged: true,位置如下图
Snipaste_2025-06-30_17-52-31
3.重新加载docker镜像sudo docker compose -f docker-compose.yml up -d
4.关闭所有容器并删除数据卷再重启

`sudo docker compose down -v`
`sudo docker volume rm docker_mysql_data` #(没有这个数据卷的话就直接跳过这一步就好了)
`sudo docker compose up`

注:我的运行到此步仍未解决

运行`sudo docker logs ragflow-mysq`查看日志发现[ERROR] mysqld: unknown variable 'binlog_expire_logs_seconds=604800'问题即MariaDB 10.5 不支持此参数。

解决方法:升级到 MariaDB 10.111
sudo vim docker-compose-base.ymlimage: mariadb:10.5.8改成image: mariadb:10.11其他不变
image
运行:
清理数据卷

`sudo docker-compose down -v`
`sudo docker volume rm docker_mysql_data`

重新运行
sudo docker-compose up --force-recreate
至此解决container ragflow-mysql is unhealthy问题。


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

重启后发现docker无法识别到gpu,linux是nvidia显卡,相关驱动已安装。
输入`nvidia-smi`检查是否输出显卡相关信息,若有输出则证明驱动已安装
确认docker已安装:`docker --version`
确认NVIDIA Container Toolkit已安装`nvidia-container-runtime --version`
一般是NVIDIA Container Toolkit未安装,我的在线安装总是报错,换镜像源也不行,所以我选择离线版安装。
参考链接:https://blog.csdn.net/qq_43548590/article/details/143193208
1.查看Ubuntu版本:`lsb_release -a`
![image](https://img2024.cnblogs.com/blog/3669944/202507/3669944-20250701085347754-419245571.png)
我的是18.04,跳转链接下载:https://mirror.cs.uchicago.edu/nvidia-docker/libnvidia-container/stable/
2.下载以下几个包并放在单独的包里。
	![image](https://img2024.cnblogs.com/blog/3669944/202507/3669944-20250701090457446-792435860.png)

libnvidia-container1_xxx_amd64.deb
libnvidia-container-tools_xxx_amd64.deb
nvidia-docker2_xxx_all.deb
nvidia-container-runtime_xxx_all.deb
nvidia-container-toolkit_xxx_amd64.deb

切换到包路径后并运行:dpkg -i ./lib* ./nvidia*安装下载的包。
重启docker:sudo systemctl restart docker
最后运行nvidia-container-runtime --version确保已安装。
至此解决Error response from daemon: could not select device driver "nvidia" with capabilities: [[gpu]]问题。


看似简单的问题实则花了不少功夫才解决,系统总是不按套路出牌。
最后贴一些指令:
ollama指令
启动:sudo systemctl start ollama
停止:sudo systemctl stop ollama
查看状态:sudo systemctl is-active ollama
输出: inactive → 确认未运行
模型运行界面退出交互(不释放资源):CTRL+D
模型运行界面退出(释放资源):/bye (在交互界面输入)


ragflow指令
cd ……/ragflow-main/docker
开始运行:sudo docker-compose -f docker-compose-gpu.yml up -d
查看运行状态:docker logs -f ragflow-server
停止运行:sudo docker-compose -f docker-compose-gpu.yml down

posted @ 2025-07-01 09:28  m520a  阅读(880)  评论(0)    收藏  举报