构建 RAGFlow Docker 镜像 (Build RAGFlow Docker image)
本指南介绍如何从源码构建 RAGFlow Docker 镜像。通过本指南,您将能够创建一个本地 Docker 镜像,用于开发、调试或测试。
目标读者
- 添加了新功能或修改了现有代码,且需要通过 Docker 镜像来查看和调试其更改的开发者。
- 寻求为 ARM64 平台构建 RAGFlow Docker 镜像的开发者。
- 旨在通过 Docker 镜像探索 RAGFlow 最新功能的测试人员。
前提条件
- CPU ≥ 4 核
- 内存 (RAM) ≥ 16 GB
- 磁盘空间 ≥ 50 GB
- Docker ≥ 24.0.0 且 Docker Compose ≥ v2.26.1
构建 Docker 镜像
该镜像大小约为 2 GB,并且依赖外部的 LLM(大语言模型)服务和嵌入(Embedding)服务。
重要
- 虽然我们也会在 ARM64 平台上测试 RAGFlow,但我们并不维护适用于 ARM 架构的官方 RAGFlow Docker 镜像。不过,您也可以在
linux/arm64或darwin/arm64宿主机上自行构建镜像。 - 对于 ARM64 平台,请将 pyproject.toml 中的
xgboost版本升级至1.6.0,并确保已正确安装 unixODBC。
git clone https://github.com/infiniflow/ragflow.git
cd ragflow/
uv run python3 download_deps.py
docker build -f Dockerfile.deps -t infiniflow/ragflow_deps .
docker build -f Dockerfile -t infiniflow/ragflow:nightly .
在 MacOS 上通过 Docker 启动 RAGFlow 服务
在构建完 infiniflow/ragflow:nightly 镜像后,您就可以准备启动一个包含所有必需组件(如 Elasticsearch、MySQL、MinIO、Redis 等)的、功能完整的 RAGFlow 服务了。
示例:Apple M2 Pro (Sequoia)
-
编辑 Docker Compose 配置
打开
docker/.env文件。找到RAGFLOW_IMAGE设置并将镜像引用从infiniflow/ragflow:v0.25.2更改为infiniflow/ragflow:nightly以使用刚才构建的镜像。 -
启动服务
cd docker
docker compose -f docker-compose-macos.yml up -d -
访问 RAGFlow 服务
设置完成后,打开网页浏览器并导航至
http://127.0.0.1或您服务器的<IP_ADDRESS>(默认端口为<PORT> = 80)。您将被重定向至 RAGFlow 欢迎页面。祝使用愉快!🍻