济曝喊 发表于 2025-7-11 16:43:13

CentOS Docker部署Ragflow并绑定Dify

在公司部署了一遍Ragflow,将部署过程及相关经验分享给大家瞧瞧

[*]通过 ping,发现无网络,联系同事开通;

[*]通过 deepseek,搜索 centos 安装 docker,开始逐步执行。第一句执行
`sudo yum install -y yum-utils   # 安装必要工具(yum-utils提供yum-config-manager)报错如图

[*]DS (Deepseek,后同) 认为是 DNS 问题,尝试ping 8.8.8.8,通,ping mirrorlist.centos.org,提示未知的名称或服务,则需配置 DNS;
[*]计划先安装 Vim,方便编辑各类配置文件;执行sudo yum install -y vim-enhanced,发现还是 2 中的问题,发觉得先搞定 DNS 和源,后续下载才好使。
[*]配置 DNS
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf
echo "nameserver 114.114.114.114" | sudo tee -a /etc/resolv.conf之后测试,百度已通

执行完后依然 2 中报错,则考虑配置源,GPT 建议执行如下命令
sudo sed -i 's|^mirrorlist=|#mirrorlist=|g' /etc/yum.repos.d/CentOS-Base.repo
sudo sed -i 's|^#baseurl=http://mirror.centos.org|baseurl=http://vault.centos.org|g' /etc/yum.repos.d/CentOS-Base.repo再执行
yum clean all
yum makecache有效,无报错
[*]继续尝试安装 vim,咨询 DS,执行如下命令
sudo yum install -y vim
vim --version
Vim 安装无误。
[*]回到 2,继续尝试安装 docker,咨询 gpt
安装依赖
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
添加 Docker 官方 YUM 源
sudo yum-config-manager
--add-repo https://download.docker.com/linux/centos/docker-ce.repo
安装docker
sudo yum install -y docker-ce docker-ce-cli containerd.io安装 docker 时报错,信息如下

询问 gpt,提供了 4 种解决方案,决定使用“使用阿里云 Docker 源”方案
四句命令,逐个执行
sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
sudo yum clean all
sudo yum makecache
sudo yum install -y docker-ce docker-ce-cli containerd.io无报错,docker 安装成功
启动并设置开机自启
sudo systemctl start docker
sudo systemctl enable docker
检查是否运行成功
sudo systemctl status docker
运行测试命令
sudo docker run hello-world报错如下

此问题此前见到过,此时应给 docker 换源,问 gtp 操作步骤
vim /etc/docker/daemon.json按 i 进入编辑模式,将如下源整体覆盖进去
        {
   "registry-mirrors": ["https://mkoo7bej.mirror.aliyuncs.com",
                        "https://docker.m.daocloud.io",
         "https://hub-mirror.c.163.com",
         "https://mirror.baidubce.com",
         "https://your_preferred_mirror",
         "https://dockerhub.icu",
         "https://docker.registry.cyou",
         "https://docker-cf.registry.cyou",
         "https://dockercf.jsdelivr.fyi",
         "https://docker.jsdelivr.fyi",
         "https://dockertest.jsdelivr.fyi",
         "https://mirror.aliyuncs.com",
         "https://dockerproxy.com",
         "https://mirror.baidubce.com",
         "https://docker.m.daocloud.io",
         "https://docker.nju.edu.cn",
         "https://docker.mirrors.sjtug.sjtu.edu.cn",
         "https://docker.mirrors.ustc.edu.cn",
         "https://mirror.iscas.ac.cn",
         "https://docker.rainbond.cc"
                     ]
}按 esc,退出编辑模式,之后输入如下命令后回车
保存并退出
:wq重启 docker
sudo systemctl daemon-reload
sudo systemctl restart docker再次执行运行测试命令        sudo docker run hello-world命令,结果如下,已正常

[*]开始尝试部署 ragflow,询问 gpt,按步骤执行
### 安装 Docker Compose,Docker Compose 用于编排多容器部署
sudo curl -L                "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
sudo chmod +x /usr/local/bin/docker-compose
执行git clone 克隆源码
git clone https://github.com/infiniflow/ragflow.git提示未找到 git 命名,则开始安装 git,询问 gpt
更新现有软件包
sudo yum update
使用yum安装git
sudo yum install -y git
验证安装,安装成功

重新执行 git clone
git clone https://github.com/infiniflow/ragflow.git执行完毕,无报错

Gpt 提示应该会有一个docker-compose.yml 文件,但未找到,故决定换 gpt 提供的另一个方案
执行删除命令

直接拉取预构建镜像
docker pull your_dockerhub_account/ragflow:latest报错

发现自己粗心,直接使用了“your_dockerhub_account/ragflow: latest”。则 google 进入 docker hub,搜索 ragflow,找到如下内容

使用其提供的命令尝试
docker pull infiniflow/ragflow
执行失败

决定重启 centos 试试
sudo shutdown -r now再次拉取,依然报错

询问 gpt,执行如下命令,通
ping -c 4 8.8.8.8执行如下命令,不通
curl -v https://registry-1.docker.io/v2/尝试给源种添加了" https://registry.docker-cn.com" ," https://mirror.ccs.tencentyun.com" ,再拉,依然不行。决定重新搜索另一个方案的执行步骤
git clone https://github.com/infiniflow/ragflow.git同样失败... 先下班了 03201927
参照之前 clone 成功时的操作,从此处重新配置源,再次 git clone,成功无误

[*]配置 ragflow
参考此篇文章 []
进入ragflow/docker目录
cd ragflow/docker
docker compose -f docker-compose.yml up -d报错,似乎是超时导致,询问 gpt,考虑加长握手时间

临时延长连接时间至600秒,重启后失效
sudo sysctl -w net.ipv4.tcp_keepalive_time=600 # 保持连接时间(秒)
再拉时没进度,重启下docker
sudo systemctl restart docker依然出现上述错误
再拉,ragflow 拉取成功,minio 没动静,失败

再拉,minio 依旧无响应,决定查看一下 docker-compose. Yml 重对此部分的描述
vim docker-compose.yml未读明白,退出后再拉,有响应,但报错,错误如下

检查 mysql
docker compose logs ragflow-mysql
根据百度搜索此报错,搜到如下操作步骤
docker compose down -v
docker compose up执行后新的报错如下

提示有冲突,用此问题咨询 DS,经过几项操作,未果
决定重启 centos 试试
sudo reboot再试,不成功,百度,被建议查日志
docker logs ragflow-mysql
提示 CPU does not support x 86-64-v 2
搜索此问题,在 github 上找到类似描述 []

按照建议进行配置,无效果
后在 CSDN 找到此文章[],按照建议进行配置
清理旧的mysql镜像
docker stop ragflow-mysql
docker rm ragflow-mysql
此处需要写自己安装的版本,我用的8.0,则写8.0
docker rmi mysql:8.0.39
在docker-compose.yml文件中再次降低mysql版本,我修改为如下
mysql:
        image: mysql:5.7
同时被建议修改minio,降低版本,做如下修改
minio:
        image: quay.io/minio/minio:RELEASE.2023-04-28T18-11-17Z # minio:RELEASE.2023-12-20T01-00-02Z
再次执行
docker compose -f docker-compose.yml up -d成功,结果如下

自此环境搭建完毕,确认服务器状态
docker logs --tail 100 -f ragflow-server结果如下:



[*]将 ragflow 配置到10.255.53.81 的 dify 上
ping 10.255.53.81
可访问
寻找同事,开通可访问 ragflow 的堡垒机,访问界面如下

配置模型

Deepseek 挂载不成功,一直在转圈

先搁置挂载 deepseek,尝试通过 api 的形式将 ragflow 知识库发布至 dify,参考[]
发布并对接成功


来源:豆瓜网用户自行投稿发布,如果侵权,请联系站长删除
页: [1]
查看完整版本: CentOS Docker部署Ragflow并绑定Dify