[2026-09-26] eagle: personal/projects/balda/balda-mattermost-connector.md personal/projects/balda/balda-mm-delegation-plan.md personal/projects/balda/mattermost-kraken-deploy.md personal/tech/balda-go-fx-pitfalls.md

This commit is contained in:
Alexey Martemyanov committed 2026-09-26 10:44:19 +06:00
1 parent 47ff9bfacd
commit 06950241dd
4 files changed
+442 -13

No files matched your search

@@ -5,8 +5,9 @@
> админ создан, **регистрация закрыта** (проверено живым запросом → HTTP 501).
> Часть проекта [[personal/projects/balda/balda-mm-delegation-plan]].
>
> **Осталось:** Alex добавил маршрут `mm → 8065` в CF-туннель (подтвердил 2026-09-26).
> Нужно: `SITEURL` → `https://mm.qentra.top` + приёмка входом в браузере.
> **Осталось:** Alex подтвердил, что `mm.qentra.top` работает (2026-09-26).
> **Сделано:** `SITEURL` → `https://mm.qentra.top`, MM перезапущен, проверено через туннель.
> **Осталось:** приёмка входом в браузере (делает Alex).
---
@@ -297,9 +298,33 @@ ssh kraken "docker ps --format '{{.Names}}\t{{.Status}}' | grep -E 'mattermost|m
| **Регистрация закрыта** | ✅ **HTTP 501 на самописную регистрацию (живая проверка)** |
| `config.json` = рантайм | ✅ приведены к согласию (`EnableUserCreation/OpeNserver: false`) |
| Cloudflare `mm → 8065` | ✅ **добавил Alex 2026-09-26** («up») |
| `SITEURL` → `https://mm.qentra.top` | ⏳ **следующий шаг** |
| `SITEURL` → `https://mm.qentra.top` | ✅ **сделано 2026-09-26** (бэкап → скрипт → `compose up -d` → проверка) |
| Ping через туннель `https://mm.qentra.top/api/v4/system/ping` | ✅ `{"status":"OK"}` |
| `mmctl config get ServiceSettings.SiteURL` | ✅ `"https://mm.qentra.top"` |
| Приёмка входом в браузере | ⏳ **делает Alex** |
### Как менялся SITEURL (2026-09-26, выполнено)
Порядок по правилу «коммит ДО → правка → заливка → проверка»:
1. **Бэкап compose** на хосте: `cp docker-compose.yml backups/docker-compose.yml.bak-$(date +%Y%m%d-%H%M%S)`
→ `/home/kraken/mattermost/backups/docker-compose.yml.bak-20260926-103937`.
2. **Правка скриптом, не sed.** `/tmp/mm-deploy/set-siteurl.py` (локально на Mac) →
`ssh kraken 'cat > /tmp/set-siteurl.py' < set-siteurl.py` → `ssh kraken 'python3 /tmp/set-siteurl.py'`.
Скрипт идемпотентен (NOOP при совпадении), пишет во временный файл и делает атомарный `replace`.
Вывод: `OK: MM_SERVICESETTINGS_SITEURL: "http://192.168.1.14:8065" -> MM_SERVICESETTINGS_SITEURL: "https://mm.qentra.top"`.
3. **Перезапуск:** `ssh kraken 'cd /home/kraken/mattermost && docker compose up -d mattermost'`
→ `mattermost Recreated → Started`, `mm-postgres Healthy`.
4. **Ожидание health** (`docker inspect mattermost --format '{{.State.Health.Status}} restarts={{.RestartCount}}'`):
`starting` ×8 итераций по 5 с → **`healthy restarts=0`** на 9-й (~45 с).
5. **Проверка с Mac:** `curl -s https://mm.qentra.top/api/v4/system/ping` → `{"status":"OK",...}`;
`docker exec mattermost mmctl --local config get ServiceSettings.SiteURL` → `"https://mm.qentra.top"`.
⚠️ `sed -i` из старой инструкции ниже **не использовать** — он оставлен как история. Правка
compose — только скриптом с бэкапом.
⚠️ При пересборке compose из генератора SITEURL перезапишется на LAN-значение. Долгосрочно —
менять значение в генераторе, а не в файле.
### Команды для следующего шага
```bash