Files
inquiry_robot/prompt/11-部署运维.md
T

5.0 KiB
Raw Blame History

提示词:部署与运行环境

目标环境:甲方 同一台 Windows Server(129.211.181.80 / 10_206_0_15)。现网继续跑 C:\yutongda。新系统是另一套应用,不要改动现网 ops\active-release.json,不要占用 8080/8810/8813。现网发布仍按甲方原流程;测试环境用本目录 12。

同机并存

项 现网(不动) 新系统
目录 C:\yutongda 例如 C:\ytd-test\
主账 / 智能体 / AIBOT 8080 / 8810 / 8813 另选端口,例如 8180 / 8910 / 8913
Nginx ai.ytd-scm.com 同一域名;切流前不改 ai.conf 回调/H5
MySQL / PG / Redis / MinIO jeecg-boot、ytd_runtime、ytd:prod:node01-07、桶 ytd-inquiry 库 ytd_test、ytd_test_runtime;Redis db1 前缀 ytd:test:;桶 ytd-test
TMS 03 现网 BaseURL + Client 三件套 原样使用;只 query,默认不开 lock/release
企微询价应用 1000010 同一套,配置抄 03
企微运维通知 1000014 同一套

切流替换现网进程时,再把 Nginx 反代指到新端口并停现网 AIBOT 桥,企微后台回调 URL 不用改。然后停下面这份现网清单。

切流时停现网:域名与端口

域名(现网站点,切流后由新系统接管同一名或下线)

地址 用途
https://ai.ytd-scm.com 后台静态 + 总入口
https://ai.ytd-scm.com/jeecgboot/、/jeecg-boot/ 反代现网 Java 8080
https://ai.ytd-scm.com/wecom/callback 企微应用回调 → 现网 8811
https://ai.ytd-scm.com/wecom/robot/callback 群机器人(现网空配置)→ 现网 8812
https://ai.ytd-scm.com/inquiry-form/ H5 → 现网 8810
https://ai.ytd-scm.com/inquiry-form/upload/ H5 上传 → 现网 8810

机器公网 129.211.181.80、SSH 22、Nginx 80/443 不要关(新系统还要用)。www.waxonai.cn 只是仓库里示例 conf,生产以 ai.ytd-scm.com 为准。

本机进程口(停现网应用服务)

端口 现网进程 切流后
8080 Java JeecgBoot 停
8809 Python bridge_api 停
8810 Python agent_api 停
8811 Python wecom_callback 停
8812 Python wecom_robot 停(若在跑)
8813 AIBOT 仅 127.0.0.1 停
(无端口) wecom/llm/recognition/quote/archive Worker 停 NSSM

不要当「询价服务」误关的

地址 原因
数据机 10.206.0.14:3306/5432/6379 实例共用;只停用库 jeecg-boot、ytd_runtime 与前缀 ytd:prod:node01-07
本机 MinIO 9000 / 控制台 9001 实例共用;只停用桶 ytd-inquiry
TMS http://113.106.62.254:3100/sangoe-boot 外部系统,新系统继续用
Gitea gitea.lionqi.com 源码,无关运行

企微侧切流:后台 1000010 回调地址保持 https://ai.ytd-scm.com/wecom/callback,只改 Nginx 指到新智能体。停现网 8813 后再起新 AIBOT(同一 Bot)。运维 1000014 仍共用。测试告警正文带 [test]。

必须保留的运维原则

  1. 制品不可变:新版本写入 releases\ 新目录,禁止覆盖活动目录。
  2. 原子切换指针:ops\active-release.json 等;失败自动回指上一活动版。
  3. 互斥锁:禁止两人同时部署。
  4. 构建不含 .env、密钥、日志、用户附件、数据库 dump。
  5. 健康检查 ≠ 业务验收。
  6. 并存阶段:禁止真实 TMS lock/release、禁止改现网回调与防火墙、禁止改 C:\yutongda\secure\。查价可用现网 TMS。测试库 ytd_test / ytd_test_runtime 的加表加字段按 05 直接迁移,不必等批准。

进程与端口

新系统自己监听(避开现网):8180 主账、8910 智能体 HTTP、8913 AIBOT 回环、一个 Worker。现网 8080/8810/8813 保持原样。

现网 release 的 8809/8811/8812 以及五个 Worker:切流前不要停。新系统用自己的服务名与端口。发布测试版时停的是测试目录里的进程,不是 C:\yutongda。切流时才把 ai.conf 的 inquiry-form / wecom/callback 反代到新 HTTP 端口。不要 Redis 全局单例锁。

基础设施

本机/服务器安装:JDK(若仍用 Java)、Python 3.12、Node(AIBOT 桥)、MySQL、PostgreSQL、Redis、MinIO 或 S3、LibreOffice、Nginx。

域名 ai.ytd-scm.com TLS 终止在 Nginx:静态后台、反代 /jeecgboot、inquiry-form 与企微回调到智能体 HTTP。

环境文件

  • 示例:仓库 .env.example 只有变量名。
  • 生产:服务器本地文件,权限仅运行账号。明文对照 03。
  • 本机开发:用脚本注入环境变量,关闭真实出站。

你要交付的脚本

等价于现网:远程身份检查、累计发布、发布后 status、远程 PowerShell 封装。不要发明「scp 覆盖几个 py」的热修当正式发布。

SSH

用户 ytd_extdev_0903,Ed25519,IdentityFile ~/.ssh/id_ed25519_ytd。公钥指纹见 03。私钥永不进仓库。