升级和安装相关的依赖
操作系统更新
sudo apt update && sudo apt upgrade
安装git-all
sudo apt install git-all
安装curl
sudo apt install curl
验证是否安装成功
curl --version
下载和安装git-lfs
curl -s https://packagecloud.io/install/repositories/github/git-lfs/script.deb.sh | sudo bashsudo apt-get install git-lfs
确保 vm.max_map_count 不小于 262144
sysctl vm.max_map_count
如果显示的数字小于262144,则继续进行如下的操作
sudo sysctl -w vm.max_map_count=1048576
这里的数字只要大于262144即可,根据自己的需要去写!
为了服务器重启之后依然生效,我们需要编辑如下的文档
sudo vim /etc/sysctl.conf
然后将下面这句命令添加到文件的末尾
vm.max_map_count=1048576
保存文件,退出编辑!
克隆仓库
为了国内下载文件更加快速,我用了代理地址来取代github的官方地址
git clone https://github.1319lm.top/infiniflow/ragflow.git
下载完成之后可以进入到ragflow目录中
cd ragflow
切换库的版本
git checkout -f v0.16.0
编辑docker配置文件
由于国内用户pull相关docker中的镜像文件的时候经常掉链子,我们需要编辑docker的配置文件,增加国内的镜像源
sudo vim /etc/docker/daemon.json
文件的内容如下,之间复制进去
{ "registry-mirrors": [ "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" ] }
重新加载配置文件
sudo systemctl daemon-reload
重启docker服务
sudo systemctl restart docker
pull ragflow项目中相关的镜像
运行下面的docker命令
docker compose -f docker/docker-compose.yml up -d
pull的时间由于我们前面已经更换成了国内的镜像源,所以时间会更快一点,大概十分钟的样子,不过pull结束后会抛出一个错误

意思就是80端口被占用了,因为ragflow默认是在80端口运行的
运行下面的命令查看是什么程序占用了80端口
sudo lsof -i :80

我的80端口是被nginx占用的,所以我需要kill掉所有的nginx服务
sudo service nginx stop
启动RAGFlow服务
重新运行下面的docker命令启动RAGFlow服务就不会报错了!
docker compose -f docker/docker-compose.yml up -d
然后我们继续运行下面的命令,来查看ragflow服务日志
docker logs -f ragflow-server

当我们看到有类似“http://127.0.0.1:9380”地址出现的时候,就意味着我们的ragflow服务已经在运行了!
此时我们可以直接打开服务器的局域网IP地址(不带端口号)就可以打开RAGFlow页面了!
首次登录,需要注册账号

登录之后的界面非常干净,是我喜欢的样子!

配置大模型
RAGFlow的大模型配置大体上和MaxKB差不多
我这里同样以vllm+oneapi来举例

模型名称一定要与oneapi中的模型名称保持一致!否则添加模型不会成功!