Files
gangyan/本地迁移改动与启动说明.md

112 lines
5.3 KiB
Markdown
Raw Permalink Normal View History

# 本地迁移:改动说明与各模块启动方法
本文记录从原服务器迁移到本机Docker 数据层在 `127.0.0.1`,离线镜像目录 `/opt/docker-images`)后的**主要配置改动**,以及**推荐启动顺序与命令**。
若路径与机器不一致,请以本仓库在磁盘上的实际目录为准(下文默认:`/opt/download/oss_files/gangyan-deploy/gangyan`)。
---
## 一、改动点汇总
### 1. Java 后端 `chat_web_backend`
| 位置 | 改动说明 |
|------|-----------|
| `src/main/resources/application.yml` | `spring.profiles.active` 默认由 `dev` 改为 **`yj`**,避免默认落到仍带历史痕迹的 `dev` 配置。 |
| `application-yj.yml` | 文件头注明:数据层走**本机 Docker**MySQL/Redis 为 **`127.0.0.1`**(库名、密码与本地容器一致,如 `chat_LLM``1234567890` 等)。 |
| `application-dev.yml` | Redis**`127.0.0.1:6379`**`database: 0`密码为空MySQL**`127.0.0.1:3306`**(取代原 `33306`)。 |
| `application-test.yml` | `serverUrlPrefix`、JDBC、Redis 统一为**本机**,密码与本地 MySQL 对齐。 |
| `application-prod.yml` | `serverUrlPrefix` 改为本地前端占位(`prod` 仍为 ENC 加密数据源,一般不用于本机开发)。 |
| `.../DocController.java` | 富文本中历史图片域名 **`106.3.149.154` / `192.168.56.188`** 替换为 **`http://127.0.0.1:8099/chat_web_backend`**。 |
| `backend/start_local.sh` | JVM 参数全部在 **`-jar` 之前**;增加 **`-Djava.net.useSystemProxies=false`** 等,避免 JDBC 误走系统 SOCKS**仅用 `profile=yj`**,数据源以 jar 内 / 源码 `application-yj.yml` 为准。 |
| `chat_web_backend/远程数据库配置说明.md` | 已改写为**纯本地部署说明**,并指向 `/opt/docker-images`。 |
| `docs/project-deployment-audit-report.md` | 文首增加**说明**:表格内公网 IP 为历史审计,**以当前 yml 为准**。 |
| `项目启动总结.md``编译和启动说明.md``登录账号信息.md` | 远程库表述改为**本机 Docker**。 |
**重要**:若部署仍使用已打好旧配置的 **`chat_web_yj.jar`**jar 包内 `BOOT-INF/classes` 可能是旧 yml。修改源码后需在本模块执行 **`mvn -DskipTests package`** 重新打 jar再启动。
### 2. Python RAG `langchain-chat`
| 位置 | 改动说明 |
|------|-----------|
| `server/embeddings_api.py`(若已部署该补丁) | **`list_online_embed_models()` 优先于 `list_embed_models()`**,避免 `bge-m3-api` 被误判为本地 HuggingFace。 |
| `configs/kb_config.py` | 默认搜索引擎 **`duckduckgo`**`kgo_*``DOWNLOAD_HOST_CK``IMAGE_SERVER_URL_TEMPLATE`、画图 URL 等改为 **`127.0.0.1` 占位**Zilliz 云主机改为 `127.0.0.1``secure: False`(向量库以 **Milvus `127.0.0.1:19530`** 为主)。 |
| `server/agent/tools/search_picture.py` 等 | 旧公网图片地址改为 **`127.0.0.1:8099/chat_web_backend`**。 |
**说明**`configs/model_config.py` 中 LLM/Embedding 的 **`http://10.102.24.75:3000`** 及部分公网 API 属于**模型推理服务**,与 MySQL/Redis 不同;若需全部收敛到本机,需单独提供本机网关后再改。
### 3. 基础设施约定
- MySQL、Redis、Milvus 等通过 **Docker** 暴露到 **`127.0.0.1`**,离线镜像 tar 目录:**`/opt/docker-images`**。
- 根目录 **`/opt/start_all.sh`** 为聚合示例;其中 Java 行若与当前 jar / 库名不一致,**优先使用 `backend/start_local.sh`**。
---
## 二、各模块启动方法(推荐顺序)
### 0. 前置Docker 数据层
```bash
cd /opt/download/oss_files/gangyan-deploy/gangyan/mysql/mysql-8.4.4
docker compose up -d
docker start redis-server 2>/dev/null || docker run -d --name redis-server -p 6379:6379 redis:7-alpine
cd /opt/download/oss_files/gangyan-deploy/gangyan/milvus
docker compose up -d
```
自检:`docker ps`;端口 `3306``6379``19530` 等可用 `ss -tlnp` 查看。
### 1. Java 后端 `chat_web_backend`
- **端口**`8099`,上下文 **`/chat_web_backend`****Profile`yj`**
```bash
sudo bash /opt/download/oss_files/gangyan-deploy/gangyan/backend/start_local.sh
# 日志backend/nohup.out
```
要求:**JDK 11**(脚本内 `JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64`)。
### 2. Python RAG `langchain-chat`
- **API**`7861`(见 `configs/server_config.py`
```bash
cd /opt/download/oss_files/gangyan-deploy/gangyan/langchain-chat
export PYTHONPATH="$(pwd):$PYTHONPATH"
nohup /opt/software/miniconda3/envs/langchain-chat/bin/python startup.py -a > /tmp/langchain-chat.log 2>&1 &
```
### 3. 前端 `chat_web_front`
- **端口**`3000`(常见)
```bash
cd /opt/download/oss_files/gangyan-deploy/gangyan/chat_web_front
npm run dev
# 或nohup npm run dev > nohup.out 2>&1 &
```
### 4. 一键脚本(可选)
```bash
bash /opt/start_all.sh
```
使用前建议核对脚本内 **Java** 启动是否与 `start_local.sh`、当前数据库名一致。
---
## 三、健康检查(可选)
```bash
curl -s -o /dev/null -w "Java %{http_code}\n" http://127.0.0.1:8099/chat_web_backend/app/user
curl -s -o /dev/null -w "Langchain %{http_code}\n" http://127.0.0.1:7861/docs
curl -s -o /dev/null -w "Vite %{http_code}\n" http://127.0.0.1:3000/
```
---
*维护说明:端口、库名或 profile 变更时,请同步更新本文与 `application-yj.yml`。*