fix(ops): 自愈 goosed 会话 PostgreSQL,防止 H5 卡在创建新对话

103 Colima goosed 依赖宿主机 postgresql@17;库停止时 /agent/start 会 pool timeout 约 60s。新增 ensure 脚本、接入监控与发布前检查,并补充拓扑文档。

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
john
2026-07-06 16:57:38 +08:00
parent ecf553754c
commit b6def0f25b
4 changed files with 74 additions and 0 deletions
+10
View File
@@ -59,6 +59,16 @@ Portal must be released as a runtime artifact. Do not edit source directly on 10
| Compose env | `/Users/john/Project/goosed-prod/.env` |
| Image pattern | `tkmind/goosed:prod-${GOOSED_TAG}` |
| Session store | PostgreSQL `memind_sessions` through `GOOSE_SESSION_DB_URL` |
| Session PostgreSQL | **Host** `postgresql@17` on `127.0.0.1:5432` (`/opt/homebrew/var/postgresql@17`) |
**Critical:** Colima goosed reaches the session DB via `host.docker.internal:5432`. If host PostgreSQL is stopped, H5 `/agent/start` hangs ~60s then fails with `pool timed out`, and the UI stays on「正在创建新对话…」. Recovery:
```bash
ssh john@58.38.22.103 'bash /Users/john/Project/Memind/scripts/ensure-goose-session-postgres.sh'
ssh john@58.38.22.103 '/opt/homebrew/opt/postgresql@17/bin/pg_isready -h 127.0.0.1 -p 5432'
```
`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: