5.2 KiB
5.2 KiB
ADR-008:正式運行環境確認 — 188 Docker Compose(非 110 K3s)
- Status: Accepted
- Date: 2026-04-18
- Decision Maker: 統帥
- Author: Claude
Context
2026-04-18 Claude 實地 SSH 盤點主機現況,發現先前多版 CLAUDE.md / ADR / 文件描述與真實運行環境嚴重不符:
文件宣稱:
- EwoooC(MOMO Pro)跑在
wooo@192.168.0.110K3s/K8s 叢集 - 專案路徑
/home/wooo/momo_pro_system/ - 容器 port 5001
- 部署走 GitLab CI/CD → kubectl rollout restart
實地觀察:
192.168.0.110上完全沒有 momo/ewoooc/flask 容器在跑/home/wooo/momo_pro_system/自 2026-02-15 起只剩docker/+venv/,非 git repo- 110 承載的是: Harbor(完整堆疊)、Sentry self-hosted(30+ 容器)、SigNoz、Gitea、Langfuse、GitLab 域名反向代理(domain 存在但後端已撤)、VM Nginx、周邊 Exporter
- EwoooC 實際運行地:
ollama@192.168.0.188:~/momo-pro/ - 部署方式: 純 Docker Compose,無 K3s/K8s,檔案用 volume mount 直掛進 container
Decision
認定事實並凍結現況描述:
| 項目 | 正式值 |
|---|---|
| 主要運行主機 | ollama@192.168.0.188 |
| 專案路徑 | /home/ollama/momo-pro/ |
| 部署工具 | Docker Compose(docker-compose.yml V12.0) |
| 主要容器 | momo-pro-system、momo-db(pgvector/pg14)、momo-scheduler、openclaw |
| Container Port | 127.0.0.1:5003:80(gunicorn 4 workers on :80) |
| 資料庫 | pgvector/pgvector:pg14(支援 AI 向量) |
| Git 版控 | 非 git repo,用 volume mount + scp 管理 |
| SSH 進入路徑 | 必經 110 跳板(ollama@188 只信任 110 的 SSH key) |
| 輔助主機 110 | Harbor + Sentry + SigNoz + Gitea + Nginx 反代 + 周邊 Exporter |
部署更新流程(官方唯一路徑):
- 本機修改 →
scp到ollama@192.168.0.188:~/momo-pro/<path>(透過 110 跳板) - Python 檔案(app.py/services/routes/templates/config.py)→ volume mount 直接生效,只需
docker restart momo-pro-system - 若需新 Python 套件 →
docker compose build momo-app && docker compose up -d momo-app - 資料庫 migration → 進入
momo-db執行 SQL
Volume mount 清單(來自容器 inspect):
/home/ollama/momo-pro/app.py -> /app/app.py (ro)
/home/ollama/momo-pro/scheduler.py -> /app/scheduler.py (ro)
/home/ollama/momo-pro/config.py -> /app/config.py (ro)
/home/ollama/momo-pro/auth.py -> /app/auth.py (ro)
/home/ollama/momo-pro/config/ -> /app/config/ (rw)
/home/ollama/momo-pro/database/ -> /app/database/ (ro)
/home/ollama/momo-pro/templates/ -> /app/templates/ (ro)
/home/ollama/momo-pro/services/ -> /app/services/ (ro)
/home/ollama/momo-pro/routes/ -> /app/routes/ (ro)
/home/ollama/momo-pro/data/ -> /app/data/ (rw)
/home/ollama/momo-pro/logs/ -> /app/logs/ (rw)
/home/ollama/momo-pro/backups/ -> /app/backups/ (rw)
docs/ 目錄未掛載 → ADR / CLAUDE.md 為人工查閱用,不影響 runtime。
Alternatives Considered
| 方案 | 拒絕原因 |
|---|---|
| 假裝文件正確,讓實況符合文件(把 app 搬回 110 K3s) | 110 已超載(Load 14.5),且 188 有 GPU 鄰近優勢 |
| 保留雙份描述(K3s + Docker) | 造成未來 Claude/統帥持續誤判,違反鐵律一 |
| 只修 CLAUDE.md 不建 ADR | 違反 ADR 鐵律,未來無決策紀錄可查 |
Consequences
須連動更新(已於本次 Session 處理)
CLAUDE.md— 所有 K3s/kubectl/PVC 指令改寫為 Docker ComposeCLAUDE.md— 專案路徑momo_pro_system→momo-pro,主機 110 → 188CLAUDE.md— 承認 Harbor / Sentry / SigNoz / Gitea 在 110 仍運行docs/memory/credentials_passbook.md— 明確劃分 110 / 188 角色docs/memory/README.md— 索引指向本 ADR
須延後處理(記入 tech debt)
- 110 上 VM Nginx
mo.wooo.work → 127.0.0.1:5001的實際轉發機制未證實(110 無明顯 5001 listener,188 的 5001 是 docker-registry,兩者不相通)。需要統帥於下次進入 110 時跑sudo ss -tlnp | grep :5001或sudo fuser 5001/tcp確認。 - 是否需把 EwoooC 專案轉為 git repo(目前 188 的
/home/ollama/momo-pro/不是 git 管理,升級有版本追溯風險) - 110 超載問題(Load 14.5,3 人登入,遠高於建議值)→ 拆 Sentry / SigNoz / Harbor 的可行性
廢止(明確不再做)
- ❌
kubectl rollout restart類指令 - ❌
git push gitlab main類部署(GitLab 已撤) - ❌ K3s PVC / StatefulSet 配置
- ❌
momo_pro_system路徑的一切引用(改為momo-pro)
Related ADRs
- ADR-006 — 專案正名 EwoooC(延伸:Scope 更明確為 Docker-on-188)
- ADR-007 — AI 學習雙寫(pgvector 在 188 的
momo-db實現)
Verification (2026-04-18 SSH 快照)
HOST 188 (ollama@192.168.0.188)
Load avg: 5.58
Docker: momo-pro-system, momo-db (pgvector/pg14), momo-scheduler, openclaw, n8n, ollama, open-webui, ...
Path: /home/ollama/momo-pro/
docker-compose.yml: V12.0
HOST 110 (wooo@192.168.0.110)
Load avg: 14.5 (超載)
Docker: Harbor x11, Sentry x30+, SigNoz, Gitea, Langfuse, ...
NO momo/ewoooc containers
/home/wooo/momo_pro_system/ 只剩 docker/ + venv/