前言

可以先去自行搜索Windows系统如何开启WSL功能,网络上有很多优质资源可以参考,这里博主不再赘述。同时注意部署RAGFlow大约需要占用30GB左右存储空间,确保你的磁盘够用。

切换英文输入法!!!很重要切记!!!

之后所有操作一定要切换到英文输入法!你可以去输入法-键盘布局中-安装美式键盘!

在WSL2中安装Ubuntu22.04

为什么是Ubuntu22.04?可以看到RAGFlow官方Repo下的Dockerfile用的就是Ubuntu22.04,因此我们使用Ubuntu22.04是绝对没问题的。

在PowerShell中输入以下命令。

wsl --list --online

这里我们选择安装Ubuntu22.04,在PowerShell中输入以下命令。

wsl --install Ubuntu-22.04

等待几分钟左右的下载安装,这样在WSL2中Ubuntu22.04就默认安装到C盘中去了,为了避免占用C盘空间,我们将它移动到别的路径。

安装完Ubuntu22.04后PowerShell应该会直接进入到Ubuntu终端中,并且需要你设置用户名及密码,各位可以先自行设置好,一定要记住你设置的用户名及密码

设置好后,在Ubuntu的终端中输入以下命令退出Ubuntu。

exit

继续进入到PowerShell的终端,在PowerShell中输入以下命令。

wsl -l -v

这里各位能成功看到各位安装好的Ubuntu22.04。

我们导出Ubuntu22.04为tar文件到D盘,在PowerShell中输入以下命令。

wsl --export Ubuntu-22.04 D:\wsl-ubuntu-22.04.tar

注销我们之前安装在C盘的Ubuntu22.04,在PowerShell中输入以下命令。

wsl --unregister Ubuntu-22.04

重新导入Ubuntu22.04的tar文件,这里我们安装在D盘,在D盘新建文件夹,改名为WSL2-Ubuntu-22.04。你可以安装到其他任意目录,自行修改即可,在PowerShell中输入以下命令。

wsl --import Ubuntu-22.04 D:\WSL2-Ubuntu-22.04 D:\wsl-ubuntu-22.04.tar --version 2

设置默认登录用户名为之前安装时的用户名,在PowerShell中输入以下命令,将以下<username>替换为你的实际的用户名

ubuntu2204 config --default-user <username>

删除tar文件,在PowerShell中输入以下命令。

del D:\wsl-ubuntu-22.04.tar

在PowerShell中输入以下命令,你还是能够看到Ubuntu22.04。

wsl -l -v

在WSL2中启动Ubuntu22.04

可以在PowerShell中输入以下命令来启动Ubuntu22.04。

wsl -d Ubuntu-22.04

或者点击这个下拉框,我个人更喜欢点击这个下拉框。

这里强烈建议大家学一学vim编辑器的使用,当然不学也行,将后续教程中出现的所有有关vim的命令改为code也行,前提是要在Windows中提前安装好VS Code,如果你是在WSL2的Ubuntu22.04中第一次使用code命令,你会看到Ubuntu22.04终端中提示正在下载安装Installing VS Code Server for Linux x64,后续教程都会以vim为例

【保姆级入门】Vim编辑器_哔哩哔哩_bilibili

听过一则笑话,如何生成随机字符串?答:让新手使用vim

在Ubuntu22.04中安装Docker

https://docs.docker.com/engine/install/ubuntu/

从这里开始,参考Docker官方安装教程即可。

容易报错的步骤是Ubuntu终端执行这个命令。

解决办法,在终端中输入以下命令。

sudo mkdir -p /etc/systemd/system/docker.service.d
sudo vim /etc/systemd/system/docker.service.d/http-proxy.conf

这里各位可以去自行询问gpt,ds等大模型,http-proxy.conf中应该怎么设置才能避免出现你们都懂的问题。WSL2的Ubuntu默认网络模式是NAT模式,可以将其改为镜像模式与Windows共享局域网,不便透露过多,懂得都懂。相信各位可以自行解决!

再次运行以下命令。

按照Docker官方安装教程,在终端中输入以下命令。

sudo docker run hello-world

出现以下输出表明你成功安装了Docker。

在Ubuntu22.04中部署RAGFlow

https://github.com/infiniflow/ragflow

从这里开始,参考RAGFlow官方安装教程即可。

在终端中输入以下命令。

vim /etc/sysctl.conf

直接到末端新建一行输入以下内容。

保存并退出,在终端中输入以下命令。

git clone https://github.com/infiniflow/ragflow.git
cd ragflow/docker

以下操作需要特别注意!!!

我们看到RAGFlow官方写的注意事项,我这里安装的是v0.17.2,带有embedding模型的知识库,你们可以自行选择。

在终端中输入以下命令。

vim .env

看到这里的84行87行以及注释的提示,你如果想要v0.17.2-slim不带embedding模型的知识库,那么不需要任何改动,直接按Esc,Shift+:,输入q,回车退出vim。

你如果想要像我一样,安装的是v0.17.2带有embedding模型的知识库,那么将第84行注释掉,取消第87行的注释。按Esc,Shift+:,输入wq,回车退出vim。

在终端中输入以下命令。

sudo docker compose -f docker-compose.yml up -d

耐心等待Docker拉取所需依赖镜像文件,大约需要三十分钟左右!!!

成功安装并且部署后,应该会是如下结果。

在终端中输入以下命令。

sudo docker logs -f ragflow-server

出现以下输出,表明安装部署成功!!!!!

按Alt+Tab切换到浏览器,输入127.0.0.1。

出现以下页面表示你已经完全成功了,恭喜你!!!

注册邮箱和密码登录即可,要注意的是,这个127.0.0.1页面中注册好的邮箱和密码其实只是保存在本地的,本地使用的账户,并不是RAGFlow | RAGFlow这个RAGFlow官网的账户

如何停止所有RAGFlow相关Docker容器的运行

在终端中输入以下命令。

sudo docker compose -f docker-compose.yml down

出现以下输出,表明所有RAGFlow相关Docker容器已停止运行

如何更新RAGFlow版本

在终端中输入以下命令。

git pull
git branch
git checkout -f v0.17.0
git switch -
cd docker
vim .env
sudo docker compose -f docker-compose.yml pull

注意这个git checkout -f v0.17.0,其中v0.17.0是版本号,这只是我这篇博客发布的这段时间的最新RAGFlow的版本号,具体更新到了多少的版本号需要自行去Github上RAGFlow的官方Repo中去关注!!!!!

注意这个vim .env,回到之前那个问题,你是需要带embedding模型的知识库还是不带embedding模型的知识库,自行修改即可!!!

后记

RAGFlow中的docker-compose.yml主要是吃CPU和内存的资源,将以上操作中的docker-compose.yml全部更换为docker-compose-gpu.yml,则是以GPU加速RAGFlow知识库的embedding模型与深度文档检测(DeepDoc)任务,目前博主暂未尝试过使用GPU运行以上任务,有经验的大佬可以交流交流!!!

Logo

为武汉地区的开发者提供学习、交流和合作的平台。社区聚集了众多技术爱好者和专业人士,涵盖了多个领域,包括人工智能、大数据、云计算、区块链等。社区定期举办技术分享、培训和活动,为开发者提供更多的学习和交流机会。

更多推荐