1773239962
This commit is contained in:
@@ -0,0 +1,324 @@
|
||||
# 一、RAGFlow 部署前提
|
||||
|
||||
最低硬件要求:
|
||||
|
||||
- CPU ≥ 4 核
|
||||
- 内存 ≥ 16 GB
|
||||
- 磁盘 ≥ 50 GB
|
||||
- Docker ≥ 24
|
||||
- Docker Compose ≥ 2.26 ([ragflow.com.cn][1])
|
||||
|
||||
RAGFlow 默认依赖这些组件:
|
||||
|
||||
- MySQL
|
||||
- Redis
|
||||
- MinIO(对象存储)
|
||||
- Elasticsearch / Infinity(检索)
|
||||
- API Server
|
||||
|
||||
这些都已经写在 `docker-compose` 里。 ([ragflow.com.cn][2])
|
||||
|
||||
---
|
||||
|
||||
# 二、系统参数调整(必须)
|
||||
|
||||
RAGFlow 用 Elasticsearch,需要调内核参数:
|
||||
|
||||
```bash
|
||||
sysctl vm.max_map_count
|
||||
```
|
||||
|
||||
如果小于 **262144**:
|
||||
|
||||
```bash
|
||||
sudo sysctl -w vm.max_map_count=262144
|
||||
```
|
||||
|
||||
永久生效:
|
||||
|
||||
```bash
|
||||
echo "vm.max_map_count=262144" >> /etc/sysctl.conf
|
||||
sysctl -p
|
||||
```
|
||||
|
||||
否则 ES 会启动失败。 ([ragflow.com.cn][1])
|
||||
|
||||
---
|
||||
|
||||
# 三、下载 RAGFlow
|
||||
|
||||
```bash
|
||||
git clone https://github.com/infiniflow/ragflow.git
|
||||
cd ragflow
|
||||
```
|
||||
|
||||
进入 docker 目录:
|
||||
|
||||
```bash
|
||||
cd docker
|
||||
```
|
||||
|
||||
目录结构大概:
|
||||
|
||||
```
|
||||
ragflow/
|
||||
├ docker/
|
||||
│ ├ docker-compose.yml
|
||||
│ ├ docker-compose-base.yml
|
||||
│ ├ .env
|
||||
│ └ service_conf.yaml.template
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# 四、配置环境变量
|
||||
|
||||
编辑 `.env`
|
||||
|
||||
```bash
|
||||
nano .env
|
||||
```
|
||||
|
||||
主要配置:
|
||||
|
||||
```env
|
||||
# elasticsearch
|
||||
STACK_VERSION=8.11.3
|
||||
ELASTIC_PASSWORD=ragflow
|
||||
|
||||
# kibana
|
||||
KIBANA_USER=rag_flow
|
||||
KIBANA_PASSWORD=infini_rag_flow
|
||||
|
||||
# ports
|
||||
ES_PORT=1200
|
||||
KIBANA_PORT=6601
|
||||
```
|
||||
|
||||
如果需要修改 Web 端口:
|
||||
|
||||
编辑 `docker-compose.yml`
|
||||
|
||||
```yaml
|
||||
ports:
|
||||
- "8080:80"
|
||||
```
|
||||
|
||||
访问地址就变成:
|
||||
|
||||
```
|
||||
http://服务器IP:8080
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# 五、启动 RAGFlow
|
||||
|
||||
```bash
|
||||
docker compose -f docker-compose.yml up -d
|
||||
```
|
||||
|
||||
查看容器:
|
||||
|
||||
```bash
|
||||
docker ps
|
||||
```
|
||||
|
||||
正常会有这些容器:
|
||||
|
||||
```
|
||||
ragflow-server
|
||||
ragflow-worker
|
||||
mysql
|
||||
redis
|
||||
minio
|
||||
elasticsearch
|
||||
kibana
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# 六、访问 RAGFlow
|
||||
|
||||
浏览器访问:
|
||||
|
||||
```
|
||||
http://服务器IP
|
||||
```
|
||||
|
||||
首次使用需要注册账号。
|
||||
|
||||
然后就可以:
|
||||
|
||||
1️⃣ 创建 Dataset(知识库)
|
||||
|
||||
2️⃣ 上传 PDF / Markdown / 文档
|
||||
|
||||
3️⃣ 自动解析
|
||||
|
||||
4️⃣ 创建 AI Chat
|
||||
|
||||
RAG 就跑起来了。
|
||||
|
||||
---
|
||||
|
||||
# 七、连接大模型
|
||||
|
||||
RAGFlow **本身不带 LLM**,需要接模型。
|
||||
|
||||
常见配置:
|
||||
|
||||
| 类型 | 推荐 |
|
||||
| ----- | -------------- |
|
||||
| 本地模型 | Ollama |
|
||||
| GPU推理 | vLLM |
|
||||
| API | OpenAI / Azure |
|
||||
| 国产 | DeepSeek |
|
||||
|
||||
例如接 **Ollama**
|
||||
|
||||
先装 Ollama:
|
||||
|
||||
```bash
|
||||
curl -fsSL https://ollama.com/install.sh | sh
|
||||
```
|
||||
|
||||
拉模型:
|
||||
|
||||
```bash
|
||||
ollama pull llama3
|
||||
```
|
||||
|
||||
然后在 RAGFlow UI:
|
||||
|
||||
```
|
||||
Settings → Model Providers
|
||||
```
|
||||
|
||||
添加:
|
||||
|
||||
```
|
||||
Provider: Ollama
|
||||
URL: http://host.docker.internal:11434
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# 八、常用运维命令
|
||||
|
||||
查看日志
|
||||
|
||||
```bash
|
||||
docker logs ragflow-server -f
|
||||
```
|
||||
|
||||
停止
|
||||
|
||||
```bash
|
||||
docker compose down
|
||||
```
|
||||
|
||||
升级
|
||||
|
||||
```bash
|
||||
git pull
|
||||
docker compose pull
|
||||
docker compose up -d
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# 九、生产环境建议
|
||||
|
||||
推荐配置:
|
||||
|
||||
```
|
||||
8 CPU
|
||||
32GB RAM
|
||||
100GB SSD
|
||||
```
|
||||
|
||||
并且:
|
||||
|
||||
- Elasticsearch 单独部署
|
||||
- MinIO 使用对象存储
|
||||
- GPU + vLLM
|
||||
|
||||
RAGFlow 在企业环境一般是:
|
||||
|
||||
```
|
||||
Nginx
|
||||
│
|
||||
RAGFlow API
|
||||
│
|
||||
Elasticsearch
|
||||
Redis
|
||||
MySQL
|
||||
MinIO
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
# 十、很多人部署失败的 3 个原因
|
||||
|
||||
90% 卡在这里:
|
||||
|
||||
### 1 Docker 版本太低
|
||||
|
||||
必须:
|
||||
|
||||
```
|
||||
Docker ≥ 24
|
||||
Compose ≥ 2.26
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 2 内存不足
|
||||
|
||||
RAGFlow 启动 ES + Python worker
|
||||
|
||||
最低:
|
||||
|
||||
```
|
||||
16GB
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 3 vm.max_map_count 没改
|
||||
|
||||
ES 直接 crash。
|
||||
|
||||
---
|
||||
|
||||
# 十一、如果你是做 AI 产品(强烈建议)
|
||||
|
||||
我建议你这样部署 RAGFlow:
|
||||
|
||||
```
|
||||
RAGFlow
|
||||
│
|
||||
vLLM (推理)
|
||||
│
|
||||
Embedding Service
|
||||
│
|
||||
对象存储
|
||||
```
|
||||
|
||||
效果比默认好很多。
|
||||
|
||||
---
|
||||
|
||||
💡 如果你愿意,我可以再给你一份 **“RAGFlow 企业级部署架构”**(包括):
|
||||
|
||||
- GPU 推理架构
|
||||
- embedding 服务
|
||||
- chunk pipeline
|
||||
- RAGFlow + MCP
|
||||
- 和你现在的 **智能体架构怎么融合**
|
||||
|
||||
我可以直接画一张 **完整 RAG 系统架构图**。
|
||||
|
||||
[1]: https://ragflow.com.cn/docs?utm_source=chatgpt.com "快速入门 | RAGFlow 引擎"
|
||||
[2]: https://ragflow.com.cn/docs/dev/configurations?utm_source=chatgpt.com "配置 | RAGFlow 引擎"
|
||||
Reference in New Issue
Block a user