在公司部署了一遍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,退出编辑模式,之后输入如下命令后回车重启 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 试试再次拉取,依然报错
询问 gpt,执行如下命令,通执行如下命令,不通- 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
参考此篇文章 [[https://mp.weixin.qq.com/s?__biz=Mzg4ODQ1NTE2Mg==&mid=2247571143&idx=1&sn=e081d898c08b19b3384591ecc7207038&chksm=cee117cdbca93b8e9a23eed10d9adc25351dc38348528b34d93d2e6f1ed6b5a7d8934eb1ae0f&scene=27|点击链接]]- 进入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 重对此部分的描述未读明白,退出后再拉,有响应,但报错,错误如下
检查 mysql- docker compose logs ragflow-mysql
复制代码
根据百度搜索此报错,搜到如下操作步骤- docker compose down -v
- docker compose up
复制代码 执行后新的报错如下
提示有冲突,用此问题咨询 DS,经过几项操作,未果
决定重启 centos 试试再试,不成功,百度,被建议查日志- docker logs ragflow-mysql
复制代码
提示 CPU does not support x 86-64-v 2
搜索此问题,在 github 上找到类似描述 [[https://github.com/infiniflow/ragflow/issues/329|点击链接]]
按照建议进行配置,无效果
后在 CSDN 找到此文章[[https://blog.csdn.net/weixin_62828995/article/details/145921395|点击链接]],按照建议进行配置- 清理旧的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 上
可访问
寻找同事,开通可访问 ragflow 的堡垒机,访问界面如下
配置模型
Deepseek 挂载不成功,一直在转圈
先搁置挂载 deepseek,尝试通过 api 的形式将 ragflow 知识库发布至 dify,参考[[https://mp.weixin.qq.com/s/ohjvwOxP-txiuLwKlxuQsw |点击链接]]
发布并对接成功
来源:豆瓜网用户自行投稿发布,如果侵权,请联系站长删除 |