docs(ops): 同步 103 生产 goosed 扩容为 9 实例

确认 goosed-prod-1..9 映射 18006-18014,更新 topology、发包必看、
发布 skill 与 release 脚本的动态 pool 校验。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
john
2026-07-07 09:22:40 +08:00
parent 5485cc563b
commit cf04e73f51
9 changed files with 74 additions and 39 deletions
+12 -5
View File
@@ -1,6 +1,6 @@
# Local and 103 runtime topology
> Last confirmed: 2026-07-03 15:36 CST.
> Last confirmed: 2026-07-07 09:19 CST.
>
> This is the current topology source of truth for local Memind and 103 production. Prefer this document over older migration notes. Older architecture documents may contain historical paths from before the MindSpace split.
@@ -19,7 +19,7 @@ Local Memind connects to native `goosed`, not Colima/Docker `goosed`.
Local ports `18007`-`18009` are not the intended local goosed pool. If they are listening locally, treat that as drift unless a specific local test explicitly opened them.
Local Colima may exist for other workloads, but local Memind/goosed is not supposed to route through the 103-style `goosed-prod-1..4` Colima pool.
Local Colima may exist for other workloads, but local Memind/goosed is not supposed to route through the 103-style `goosed-prod-1..9` Colima pool.
## Portal
@@ -31,6 +31,7 @@ Local Colima may exist for other workloads, but local Memind/goosed is not suppo
| Start script | `/Users/john/Project/Memind/scripts/run-memind-portal-prod.sh` |
| Port | `8081` |
| Health check | `curl http://127.0.0.1:8081/api/status` |
| Upstream goosed pool | `TKMIND_API_TARGETS``https://127.0.0.1:18006``18014`9 targets2026-07-07 确认) |
Portal must be released as a runtime artifact. Do not edit source directly on 103.
@@ -70,7 +71,7 @@ ssh john@58.38.22.103 '/opt/homebrew/opt/postgresql@17/bin/pg_isready -h 127.0.0
`cn.tkmind.goosed-monitor`103)运行 `goosed-prod/scripts/monitor-goosed-containers.mjs`,本地 native goosed 监控用 `scripts/monitor-goosed-fds.mjs`;两者都会在巡检时调用 `ensure-goose-session-postgres.sh`
Container layout:
Container layout (host port → container `18006`):
| Container | Host port | Container port |
|-----------|-----------|----------------|
@@ -78,8 +79,13 @@ Container layout:
| `goosed-prod-2` | `18007` | `18006` |
| `goosed-prod-3` | `18008` | `18006` |
| `goosed-prod-4` | `18009` | `18006` |
| `goosed-prod-5` | `18010` | `18006` |
| `goosed-prod-6` | `18011` | `18006` |
| `goosed-prod-7` | `18012` | `18006` |
| `goosed-prod-8` | `18013` | `18006` |
| `goosed-prod-9` | `18014` | `18006` |
All four ports must return `ok` from `/status`.
All nine host ports must return `ok` from `/status`, and must appear in Portal `.env` `TKMIND_API_TARGETS`.
## PostgreSQL rule
@@ -119,5 +125,6 @@ ssh john@58.38.22.103 '/opt/homebrew/bin/docker inspect goosed-prod-1 --format "
```bash
ssh john@58.38.22.103 'curl -fsS http://127.0.0.1:8081/api/status'
ssh john@58.38.22.103 'curl -fsS http://127.0.0.1:8082/health'
ssh john@58.38.22.103 'for p in 18006 18007 18008 18009; do curl -kfsS https://127.0.0.1:$p/status; echo; done'
ssh john@58.38.22.103 'for p in $(seq 18006 18014); do curl -kfsS https://127.0.0.1:$p/status; echo; done'
ssh john@58.38.22.103 'grep ^TKMIND_API_TARGETS= /Users/john/Project/Memind/.env'
```