[全量] 初始化项目代码、配置、文档及Agent协同harness
This commit is contained in:
362
数据库配置汇总.md
Normal file
362
数据库配置汇总.md
Normal file
@@ -0,0 +1,362 @@
|
||||
# 甘言AI对话系统 - 数据库及服务配置汇总
|
||||
|
||||
> 本文档汇总了项目所有数据库和服务的配置信息,方便新同事快速了解系统架构
|
||||
> 更新时间:2026-03-26
|
||||
|
||||
---
|
||||
|
||||
## 一、系统架构概览
|
||||
|
||||
```
|
||||
┌─────────────────────────────────────────────────────────────────┐
|
||||
│ 甘言AI对话系统 │
|
||||
├─────────────────────────────────────────────────────────────────┤
|
||||
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────────────┐ │
|
||||
│ │ Vue前端 │ │ Java后端 │ │Python RAG│ │ 向量模型API │ │
|
||||
│ │ :3000 │ │ :8099 │ │ :7861 │ │ :3000 (bge-m3) │ │
|
||||
│ └────┬─────┘ └────┬─────┘ └────┬─────┘ └──────────────────┘ │
|
||||
│ └─────────────┴─────────────┘ │
|
||||
│ │ │
|
||||
│ ┌─────────────────┼─────────────────┐ │
|
||||
│ ▼ ▼ ▼ │
|
||||
│ ┌─────────┐ ┌─────────┐ ┌──────────┐ │
|
||||
│ │ MySQL │ │ Redis │ │ Milvus │ │
|
||||
│ │ :33306 │ │ :6379 │ │ :19530 │ │
|
||||
│ └─────────┘ └─────────┘ └────┬─────┘ │
|
||||
│ │ │
|
||||
│ ┌────┴────┐ │
|
||||
│ │ MinIO │ │
|
||||
│ │ :9002 │ │
|
||||
│ └─────────┘ │
|
||||
└─────────────────────────────────────────────────────────────────┘
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 二、数据库配置
|
||||
|
||||
### 1. MySQL (主数据库)
|
||||
|
||||
| 配置项 | 值 | 说明 |
|
||||
|--------|-----|------|
|
||||
| **部署方式** | Docker Compose | 本地容器部署 |
|
||||
| **容器名称** | mysql-server | - |
|
||||
| **镜像** | docker.1ms.run/mysql:8.4.4 | MySQL 8.4.4 |
|
||||
| **主机端口** | `33306` | 对外暴露端口 |
|
||||
| **容器端口** | `3306` | MySQL默认端口 |
|
||||
| **数据库名** | `chat_LLM` | 主业务数据库 |
|
||||
| **root密码** | `1234567890` | 生产环境请修改 |
|
||||
| **root主机** | `%` | 允许任意IP连接 |
|
||||
| **数据卷** | `./mysql_bind` | 数据持久化目录 |
|
||||
| **Compose文件** | `mysql/docker-compose.yml` | - |
|
||||
|
||||
**Java连接配置** (application-yj.yml):
|
||||
```yaml
|
||||
url: jdbc:mysql://127.0.0.1:3306/chat_LLM?useUnicode=true&characterEncoding=utf8&...
|
||||
username: root
|
||||
password: "1234567890"
|
||||
```
|
||||
|
||||
**外部连接命令**:
|
||||
```bash
|
||||
mysql -h 127.0.0.1 -P 33306 -u root -p
|
||||
# 密码: 1234567890
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 2. Redis (缓存)
|
||||
|
||||
| 配置项 | 值 | 说明 |
|
||||
|--------|-----|------|
|
||||
| **部署方式** | 宿主机直接安装 | 非Docker部署 |
|
||||
| **主机** | `127.0.0.1` | 本地连接 |
|
||||
| **端口** | `6379` | Redis默认端口 |
|
||||
| **密码** | 空 | 无密码 |
|
||||
| **数据库** | `0` | 默认数据库 |
|
||||
| **超时** | 6000ms | 连接超时 |
|
||||
|
||||
**Java连接配置**:
|
||||
```yaml
|
||||
redis:
|
||||
host: 127.0.0.1
|
||||
port: 6379
|
||||
password: ""
|
||||
database: 0
|
||||
```
|
||||
|
||||
**测试连接**:
|
||||
```bash
|
||||
redis-cli -h 127.0.0.1 -p 6379
|
||||
> ping
|
||||
PONG
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 3. Milvus (向量数据库)
|
||||
|
||||
| 配置项 | 值 | 说明 |
|
||||
|--------|-----|------|
|
||||
| **部署方式** | Docker Compose | 包含etcd、minio、standalone |
|
||||
| **容器名称** | milvus-standalone | 主服务 |
|
||||
| **镜像** | milvusdb/milvus:v2.6.4 | Milvus 2.6.4 |
|
||||
| **端口** | `19530` | gRPC端口 |
|
||||
| **监控端口** | `9091` | 健康检查端口 |
|
||||
| **依赖服务** | etcd + minio | 元数据+对象存储 |
|
||||
| **Compose文件** | `milvus/docker-compose.yml` | - |
|
||||
|
||||
**依赖组件**:
|
||||
- **etcd**: 存储元数据 (端口 2379, 容器名: milvus-etcd)
|
||||
- **minio**: 对象存储 (端口 9000/9002, 容器名: milvus-minio)
|
||||
|
||||
**Python连接配置**:
|
||||
```python
|
||||
from pymilvus import connections
|
||||
connections.connect(host="127.0.0.1", port="19530")
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 4. MinIO (对象存储 - 独立部署)
|
||||
|
||||
| 配置项 | 值 | 说明 |
|
||||
|--------|-----|------|
|
||||
| **部署方式** | Docker (Milvus自带) | 与Milvus共用 |
|
||||
| **容器名称** | milvus-minio | - |
|
||||
| **镜像** | minio/minio:RELEASE.2024-12-18 | - |
|
||||
| **API端口** | `9003` (映射到9000) | S3 API端口 |
|
||||
| **控制台端口** | `9002` (映射到9001) | Web管理界面 |
|
||||
| **Access Key** | `minioadmin` | 默认账号 |
|
||||
| **Secret Key** | `minioadmin` | 默认密码 |
|
||||
|
||||
**访问地址**:
|
||||
- Web控制台: http://127.0.0.1:9002
|
||||
- API地址: http://127.0.0.1:9003
|
||||
|
||||
---
|
||||
|
||||
## 三、应用服务配置
|
||||
|
||||
### 1. Java后端服务 (Spring Boot)
|
||||
|
||||
| 配置项 | 值 | 说明 |
|
||||
|--------|-----|------|
|
||||
| **服务名称** | chat_web_backend | - |
|
||||
| **端口** | `8099` | Tomcat端口 |
|
||||
| **上下文路径** | `/chat_web_backend` | API前缀 |
|
||||
| **完整URL** | http://localhost:8099/chat_web_backend | - |
|
||||
| **活跃配置** | `yj` | spring.profiles.active=yj |
|
||||
| **主配置** | application-yj.yml | 本地开发配置 |
|
||||
| **Jar包路径** | `chat_web_backend/target/` | Maven打包输出 |
|
||||
|
||||
**启动命令**:
|
||||
```bash
|
||||
cd /opt/download/oss_files/gangyan-deploy/gangyan/chat_web_backend
|
||||
java -jar target/chat_web_backend-1.0.jar --spring.profiles.active=yj
|
||||
```
|
||||
|
||||
**配置文件位置**:
|
||||
```
|
||||
chat_web_backend/src/main/resources/
|
||||
├── application.yml # 公共配置
|
||||
├── application-yj.yml # 本地开发配置(在用)
|
||||
├── application-prod.yml # 生产环境配置
|
||||
├── application-dev.yml # 开发环境配置
|
||||
└── application-test.yml # 测试环境配置
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### 2. Python RAG服务 (LangChain-Chat)
|
||||
|
||||
| 配置项 | 值 | 说明 |
|
||||
|--------|-----|------|
|
||||
| **服务类型** | FastAPI + 多进程 | LangChain-Chatchat |
|
||||
| **API端口** | `7861` | 主API服务 |
|
||||
| **启动文件** | `startup.py` | - |
|
||||
| **Python版本** | 3.11 | conda环境 |
|
||||
| **Conda环境** | `langchain-chat` | - |
|
||||
| **主目录** | `/opt/download/oss_files/gangyan-deploy/gangyan/langchain-chat` | - |
|
||||
|
||||
**关键配置**:
|
||||
```yaml
|
||||
# configs/model_config.py
|
||||
EMBEDDING_MODEL: "bge-m3-api" # 嵌入模型
|
||||
LLM_MODELS: ["deepseek-v3", ...] # LLM模型列表
|
||||
EMBEDDING_DEVICE: "cpu" # 嵌入设备
|
||||
LLM_DEVICE: "cuda" # LLM设备
|
||||
```
|
||||
|
||||
**启动命令**:
|
||||
```bash
|
||||
cd /opt/download/oss_files/gangyan-deploy/gangyan/langchain-chat
|
||||
/opt/software/miniconda3/envs/langchain-chat/bin/python startup.py -a
|
||||
```
|
||||
|
||||
**向量模型API** (外部服务):
|
||||
- 地址: http://10.102.24.75:3000/v1
|
||||
- 模型: bge-m3 ( embeddings )
|
||||
- 类型: OpenAI格式兼容API
|
||||
|
||||
---
|
||||
|
||||
### 3. Vue前端服务
|
||||
|
||||
| 配置项 | 值 | 说明 |
|
||||
|--------|-----|------|
|
||||
| **框架** | Vue 3 + Vite | - |
|
||||
| **端口** | `3000` | 开发服务器 |
|
||||
| **构建输出** | `dist/` | 生产包 |
|
||||
| **源码路径** | `chat_web/` | - |
|
||||
|
||||
**开发启动**:
|
||||
```bash
|
||||
cd /opt/download/oss_files/gangyan-deploy/gangyan/chat_web
|
||||
npm install
|
||||
npm run dev
|
||||
```
|
||||
|
||||
**生产构建**:
|
||||
```bash
|
||||
npm run build
|
||||
# 输出到 dist/ 目录,部署到Nginx
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 四、端口汇总表
|
||||
|
||||
| 服务 | 端口 | 类型 | 说明 |
|
||||
|------|------|------|------|
|
||||
| Vue前端 | 3000 | HTTP | 开发服务器 |
|
||||
| Java后端 | 8099 | HTTP | Spring Boot服务 |
|
||||
| Python RAG | 7861 | HTTP | FastAPI服务 |
|
||||
| MySQL | 33306 | TCP | 数据库(映射) |
|
||||
| Redis | 6379 | TCP | 缓存服务 |
|
||||
| Milvus | 19530 | gRPC | 向量数据库 |
|
||||
| Milvus监控 | 9091 | HTTP | 健康检查 |
|
||||
| MinIO API | 9003 | HTTP | 对象存储API |
|
||||
| MinIO控制台 | 9002 | HTTP | Web管理界面 |
|
||||
|
||||
---
|
||||
|
||||
## 五、关键配置文件路径
|
||||
|
||||
### 1. Docker Compose文件
|
||||
```
|
||||
/opt/download/oss_files/gangyan-deploy/gangyan/
|
||||
├── mysql/docker-compose.yml # MySQL 8.4.4
|
||||
├── milvus/docker-compose.yml # Milvus + etcd + minio
|
||||
```
|
||||
|
||||
### 2. Java后端配置
|
||||
```
|
||||
/opt/download/oss_files/gangyan-deploy/gangyan/chat_web_backend/src/main/resources/
|
||||
├── application.yml # 公共配置
|
||||
├── application-yj.yml # 当前在用配置
|
||||
└── ...
|
||||
```
|
||||
|
||||
### 3. Python RAG配置
|
||||
```
|
||||
/opt/download/oss_files/gangyan-deploy/gangyan/langchain-chat/
|
||||
├── configs/
|
||||
│ ├── model_config.py # 模型配置
|
||||
│ ├── server_config.py # 服务配置
|
||||
│ └── kb_config.py # 知识库配置
|
||||
└── startup.py # 启动脚本
|
||||
```
|
||||
|
||||
### 4. Vue前端配置
|
||||
```
|
||||
/opt/download/oss_files/gangyan-deploy/gangyan/chat_web/
|
||||
├── vite.config.js # Vite配置
|
||||
├── package.json # 依赖配置
|
||||
└── .env # 环境变量
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 六、常用操作命令
|
||||
|
||||
### 启动所有服务
|
||||
```bash
|
||||
cd /opt/download/oss_files/gangyan-deploy/gangyan
|
||||
|
||||
# 1. 启动基础服务
|
||||
docker-compose -f mysql/docker-compose.yml up -d
|
||||
docker-compose -f milvus/docker-compose.yml up -d
|
||||
|
||||
# 2. 启动Java后端
|
||||
nohup java -jar chat_web_backend/target/chat_web_backend-1.0.jar \
|
||||
--spring.profiles.active=yj > /tmp/java-server.log 2>&1 &
|
||||
|
||||
# 3. 启动Python RAG
|
||||
cd langchain-chat
|
||||
nohup /opt/software/miniconda3/envs/langchain-chat/bin/python \
|
||||
startup.py -a > /tmp/langchain-chat.log 2>&1 &
|
||||
|
||||
# 4. 启动Vue前端(开发)
|
||||
cd chat_web
|
||||
npm run dev
|
||||
```
|
||||
|
||||
### 检查服务状态
|
||||
```bash
|
||||
# 查看端口监听
|
||||
netstat -tlnp | grep -E "8099|7861|33306|6379|19530"
|
||||
|
||||
# 查看Docker容器
|
||||
docker ps
|
||||
|
||||
# 查看Java进程
|
||||
ps aux | grep java
|
||||
|
||||
# 查看Python进程
|
||||
ps aux | grep "startup.py"
|
||||
```
|
||||
|
||||
### 重启服务
|
||||
```bash
|
||||
# 重启MySQL
|
||||
docker restart mysql-server
|
||||
|
||||
# 重启Milvus
|
||||
docker restart milvus-standalone milvus-etcd milvus-minio
|
||||
|
||||
# 重启Java
|
||||
pkill -f "chat_web_backend"
|
||||
nohup java -jar chat_web_backend/target/chat_web_backend-1.0.jar \
|
||||
--spring.profiles.active=yj > /tmp/java-server.log 2>&1 &
|
||||
|
||||
# 重启Python RAG
|
||||
pkill -f "startup.py"
|
||||
cd langchain-chat
|
||||
nohup /opt/software/miniconda3/envs/langchain-chat/bin/python \
|
||||
startup.py -a > /tmp/langchain-chat.log 2>&1 &
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## 七、注意事项
|
||||
|
||||
1. **MySQL端口**: 对外暴露为 `33306`,但Java配置中使用的是 `3306`,说明Java和MySQL在同一台机器上(或使用了端口转发)
|
||||
|
||||
2. **Redis无密码**: 当前配置未设置Redis密码,生产环境建议配置密码
|
||||
|
||||
3. **Milvus依赖**: 启动Milvus前必须确保etcd和minio已启动
|
||||
|
||||
4. **向量模型**: bge-m3通过外部API调用 (10.102.24.75:3000),非本地部署
|
||||
|
||||
5. **数据备份**:
|
||||
- MySQL数据在 `mysql/mysql_bind/` 目录
|
||||
- Milvus数据在 `milvus/volumes/` 目录
|
||||
|
||||
---
|
||||
|
||||
## 八、联系信息
|
||||
|
||||
如有问题,请联系:
|
||||
- 项目路径: `/opt/download/oss_files/gangyan-deploy/gangyan/`
|
||||
- 部署文档: 见项目README.md
|
||||
Reference in New Issue
Block a user