Files
admin/.tasks/NEXT_SESSION.md
vitya 86c44c3db9 tasks(books-vds-stacks-to-portainer): close 🟢 — 6 stacks migrated SSH-compose → Portainer
Phase 2 ladder executed 2026-05-25 (~10min end-to-end, lowest → highest blast radius):
  proxy-chain (id 28) → imgproxy (29) → minio (30) → mongo (31) → books-db (32) → elasticsearch (33)

All 6 smoked green. books-api + books-task-runner reconnected transparently through
mongo + books-db recreate windows. ES snapshot repo `kreknin` preserved through bind.

Phase 3:
- created .wiki/concepts/portainer-stack-management-books-vds.md (pattern application + diffs from vds-kzntsv)
- entity books-vds.md: 6 stacks flipped SSH-managed → Portainer-managed
- index.md: new concept entry

Pre-flight quirks documented (CentOS 7 yum dead, no jq, no docker login).

Acceptance: 4/5 verified, backup pipeline (#5) verified by inspection (bind paths
preserved) — full pipeline run pending next 06:00 MSK.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-25 10:27:23 +03:00

4.8 KiB
Raw Blame History

_last_updated_, session_id
_last_updated_ session_id
2026-05-25T12:00:00+03:00 2026-05-25-books-vds-stacks-to-portainer

Next session handoff

Recent commits

  • (about to commit) tasks(books-vds-stacks-to-portainer): close 🟢 — 6 stacks migrated, wiki + entity updated — final session commit.
  • scripts(books-vds-portainer-migration): Phase 1 adapter ready (141efe97)
  • tasks(books-vds-stacks-to-portainer): Phase 0 probe complete, +imgproxy scope (bfb942cd)
  • tasks: add ⚪ books-vds-stacks-to-portainer (439da3ce)
  • backup(books-vds): daily 06:00 MSK pipeline to kreknin live 🟢 (fe41ee44)

Open треки

Трек Готовность Entry-point
stateful-split-volume-copy not started; lean playbook готов, fits real books VDS (89.253.255.133) .tasks/stateful-split-volume-copy.md
iis-migration-to-ruvds 🟡 soak (kupimknigi + emspb DNS flipped 2026-05-24, 22 pending) .tasks/iis-migration-to-ruvds.md
infra-inventory ready, не начат — обновлён factsheet books-vds после Portainer migration, готов к ingest в admin-detailed runbook .tasks/infra-inventory.md
books-bookva-user-whitelist-gathering ready, long-lead gathering (email-based) .tasks/books-bookva-user-whitelist-gathering.md
books-vds-bookva-bootstrap 🔵 blocked on tenant-split Phase 4 .tasks/books-vds-bookva-bootstrap.md
books-dns-cutover-bookva 🔵 blocked on books-vds-bookva-bootstrap .tasks/books-dns-cutover-bookva.md
books-stateful-split-execution 🔵 blocked on dev-prep + per-tenant-backup-and-observability в victor/books .tasks/STATUS.md

Спроси user'а

  • Verify backup pipeline post-migration: next scheduled run 06:00 MSK 2026-05-26 (через ~18h от close). Если ntfy/email прийдут с success — acceptance criterion #4 finalized. Если нет — investigate (most likely bind paths intact, low risk).
  • Какую таску брать следующей? Active candidates: stateful-split-volume-copy (ops, lean playbook готов), infra-inventory (книги VDS теперь fully documented — момент удачный), iis-migration-to-ruvds (DNS TTL reductions для 22 pending hosts).

Не делать (preemptive guards)

  • Не editit /usr/docker/<svc>/docker-compose.yml на books VDS — теперь reference-only. Portainer-managed compose state в /data/compose/<id>/docker-compose.yml. Edit через Portainer UI или API.
  • Не docker compose up -d на books VDS для migrated стеков — стартанёт parallel set контейнеров под compose-project <dirname>, conflicting names с Portainer-managed. Trust Portainer для lifecycle.
  • Не push without grant in next session — auto-push grant был session-only (Rule 4). Next session start = ask-mode again.
  • Не migrate traefik / portainer на books VDS — management plane, recreate ломает access. Same exclusion as vds-kzntsv.
  • Не trust docker login registry.kzntsv.site на books VDS — НЕ настроен. Кэшированные images сейчас спасают, но force-pull для private images → auth fail. Setup login если planned image-rotation.

Memory updates за сессию

  • Учить: на books VDS yum dead (CentOS 7 EOL 2024-06, mirrors retired). Static binary install — единственный путь для package install (e.g. curl -fsSL https://github.com/jqlang/jq/releases/.../jq-linux-amd64 -o /usr/local/bin/jq).
  • Учить: Portainer single instance portainer.kzntsv.site управляет 2 endpoint'ами — 1 = books VDS, 6 = stostayer (другой клиент, не наш, не расширять scope сюда).
  • Учить: Portainer migration ladder lowest→highest blast radius works на books VDS — proxy-chain → imgproxy → minio → mongo → books-db → elasticsearch. Books-api + books-task-runner reconnect transparently через mongo/books-db recreate windows (~13-15s). ES cluster yellow normal для single-node.
  • Учить: imgproxy (2 containers, serves imgproxy.kzntsv.site, S3 backend → minio) был missing из entity wiki до Phase 0 probe — lesson: при entity wiki bootstrap на legacy hosts обязательно ls /usr/docker/ cross-check vs docker ps.
  • Reference: migration pattern source — ../wiki/concepts/portainer-stack-management-vds (vds-kzntsv); books VDS application + diffs — ../wiki/concepts/portainer-stack-management-books-vds.
  • Reference: scripts/books-vds-portainer-migration/{migrate.sh,README.md} — adapter for future re-use (e.g. если появится ещё SSH-compose стек на books VDS).