refactor(rpc): bridge 接入 spug-net 直连 wangliang-dev:950x,去掉对宿主 socat 的依赖

This commit is contained in:
wangliang
2026-10-23 11:25:53 +08:00
parent 3b8997b565
commit 5b08bcfc7c
2 changed files with 16 additions and 7 deletions
+10 -7
View File
@@ -45,16 +45,19 @@ grep '^TOOLS_SHARED_KEY=' .env # bridge 工具密钥
| `LIBREDESK_IMAGE` | `libredesk/libredesk:v2.9.0-rc.10` | `libredesk/libredesk:v2.9.0-rc.10-**arm64**` | 宿主是 ARM64,`v2.9.0-rc.10` 只有 amd64;官方另发了 `-arm64` 同版本 tag,实测原生 `linux/arm64` 运行 |
| `LIBREDESK_BASE_URL` | `http://localhost:9000` | `https://wangliang-crm.dev.gaia888.com` | 走宿主 nginx 的 HTTPS |
| `TWENTY_SERVER_URL` | `http://192.168.31.61:3100` | `https://wangliang-twenty.dev.gaia888.com` | 前端 `REACT_APP_SERVER_BASE_URL` 用的就是它(已核对页面内联配置) |
| `RECOMMEND_URL` | 测试服地址 | `jsonrpc://host.docker.internal:24503` | 用 **本工作区** 的 product-service(宿主 socat 24503 → 容器 9503) |
| `ORDER_API_URL` | 测试服地址 | `jsonrpc://host.docker.internal:24505` | trading-service(24505 → 9505) |
| `INVENTORY_API_URL` | 测试服地址 | `jsonrpc://host.docker.internal:24509` | eta-service(24509 → 9509) |
| `MEMBER_RPC_URL` | 测试服地址 | `jsonrpc://host.docker.internal:24506` | member-service(24506 → 9506) |
| `RECOMMEND_URL` | 测试服地址 | `jsonrpc://wangliang-dev:9503` | 用 **本工作区** 的 product-service |
| `ORDER_API_URL` | 测试服地址 | `jsonrpc://wangliang-dev:9505` | trading-service |
| `INVENTORY_API_URL` | 测试服地址 | `jsonrpc://wangliang-dev:9509` | eta-service |
| `MEMBER_RPC_URL` | 测试服地址 | `jsonrpc://wangliang-dev:9506` | member-service |
| `IDENTITY_DEV_MODE` | `false` | `true` | dev 环境方便 widget 联调;**上生产前改回 `false`** |
| `PRODUCT_TIMEOUT_MS` | 未透传(bridge 默认 15s) | `30000`(compose 增加透传) | 冷门长查询会偶发 >15s,超时会降级成无价格的站点地图结果,模型易编价 |
| `public-gateway` / `cloudflared` | compose 里默认启动 | **未启动** | 已有宿主 nginx 直出 HTTPS,不需要 Cloudflare 临时隧道 |
| bridge 网络 | 只挂 `crm-new_default` | 额外接入 `spug-net` | 直连 `wangliang-dev:9503/9505/9506/9509`,去掉对宿主 socat 转发的依赖 |
`host.docker.internal` 由 compose 的 `extra_hosts` 注入,指向宿主;`24503-24509` 是本工作区的 RPC 宿主转发端口
(见 `conf/dev/rpc-forward.sh`,cron 每分钟自愈)。
RPC 走 **容器网络直连**:compose 把 `bridge` 同时接入外部网络 `spug-net`(与 `wangliang-dev` 同网络),
直接按容器名解析到 `wangliang-dev`,不再依赖宿主 `socat` 24503-24509 转发。容器重建后 DNS 名不变,
比 socat 需要按 IP 重建更稳。宿主侧的 `conf/dev/rpc-forward.sh` 仍保留(供宿主/不在 spug-net 的容器使用),
但本栈已不依赖它。
## 4. 已完成初始化
@@ -79,7 +82,7 @@ grep '^TOOLS_SHARED_KEY=' .env # bridge 工具密钥
### bridge
- `/healthz` 正常,10 个工具就绪。
- 实测 `search_products` 直接命中**本工作区真实商品数据**(如 `Stainless Steel Y-Chain Necklace` / `$6.73` /
`product_id=11079`),说明 `host.docker.internal:24503` 的 JSONRPC 链路是通的。
`product_id=11079`),说明 `wangliang-dev:9503` 的 JSONRPC 直连链路是通的(工具调用 925ms,source=catalog)。
- `search_orders` 未验证身份时按设计返回 `verification_required`。
## 5. 运维命令