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

112 lines
5.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# 本地迁移:改动说明与各模块启动方法
本文记录从原服务器迁移到本机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`。*