From 744c384bec09d92a8f6f691704e625a5202054ff Mon Sep 17 00:00:00 2001 From: vitya Date: Tue, 26 May 2026 11:57:42 +0300 Subject: [PATCH] =?UTF-8?q?tasks(bookva-tenant-cutover-prep):=20post-closu?= =?UTF-8?q?re=20=E2=80=94=20bookva-minio=20+=20external?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Extension в той же сессии после 6/7 closure: - bookva-minio container (stack 49) — отдельный MinIO instance вместо bucket-split в shared. minio:RELEASE.2020-07-13 (parity books-minio), bookva-minio-data (1.2G cp -a books bucket), endpoint http://bookva-minio:9000 для internal apps, port-bind 9001 для external. - bookva-db PUT — добавлен port 33306:3306 для external MySQL access. - bookva-overlay templates: s3.endpoint → http://bookva-minio:9000, bucket=books (no override). - Step 6 descoped — PWA redirect modal для одного user.id=1 = overhead vs manual heads-up учредителю. External access verified: - mysql -h 89.253.255.133 -P 33306 -uroot -p... (MariaDB 10.6.26 handshake) - http://89.253.255.133:9001 (S3 API, 403 anon = service alive) Traefik HTTPS labels для bookva-minio.kzntsv.site добавлены (activate когда DNS A-record → 89.253.255.133 в reg.ru). 7/7 done (Step 6 descoped) + bookva-minio extension. Cutover task будет re-start 6 stopped stacks + Mongo agenda cleanup + ES snapshot/restore + books-api shutdown. Co-Authored-By: Claude Opus 4.7 (1M context) --- .tasks/STATUS.md | 4 ++-- .tasks/bookva-tenant-cutover-prep.md | 11 ++++++++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/.tasks/STATUS.md b/.tasks/STATUS.md index b0de7ec..547494f 100644 --- a/.tasks/STATUS.md +++ b/.tasks/STATUS.md @@ -19,9 +19,9 @@ _Updated: 2026-05-25 (`iis-migration-to-ruvds` 🟢 closed Phase 1 per user deci --- -## 🟢 [bookva-tenant-cutover-prep] — closed 2026-05-26 — 6/7 done в одну сессию (Step 6 delayed по spec) +## 🟢 [bookva-tenant-cutover-prep] — closed 2026-05-26 — 7/7 (Step 6 descoped) + extension (bookva-minio + external port-bind) -Все ops-шаги VDS-side выполнены: Gitea secrets ✓ (7 шт), 9/10 Portainer bookva stacks ✓ (ozon-mcp deferred — image отсутствует в registry), volumes ✓ (db+mongo cp -a, es+ntfy empty, 4 config volumes populated), login-gate SQL ✓ (bookva-db users id≥3 → UUID random pwd), DNS ✓ (бы pre-existed), books-web embed-api switch ✓ (Portainer stack 24 + compose template synced). +Все ops-шаги VDS-side выполнены: Gitea secrets ✓ (7 шт), **10/11** Portainer bookva stacks ✓ (ozon-mcp deferred — image отсутствует в registry; bookva-minio добавлен post-closure), volumes ✓ (db+mongo cp -a, es+ntfy empty, 4 config volumes populated, bookva-minio-data cp с books bucket), login-gate SQL ✓ (bookva-db users id≥3 → UUID random pwd), DNS ✓ (pre-existed), books-web embed-api switch ✓, **external access** ✓ (bookva-db:33306 + bookva-minio:9001). **Контекст dev-source:** victor/books `.wiki/concepts/tenant-split.md` rev v3. Code-side: `5e28fd1` embed-api+zod^4, `4a9cafc` ES endpoint, `c1e58cf` PWA redirect, `88df172` deploy.yml per-tenant. Overlay-repos: **bookva-overlay/main `8bffd68`** (templates aligned + mariadb:10.6 + mongo:4.2 + api internal-only + depends_on removed). diff --git a/.tasks/bookva-tenant-cutover-prep.md b/.tasks/bookva-tenant-cutover-prep.md index eef347a..d9fc55d 100644 --- a/.tasks/bookva-tenant-cutover-prep.md +++ b/.tasks/bookva-tenant-cutover-prep.md @@ -130,7 +130,16 @@ NUXT_PUBLIC_BOOKS_API_KEY= # удалить (legacy) ## Status -closed 2026-05-26 — 6/7 done in одну сессию. Step 6 delayed by design (1-2 нед до cutover). +🟢 closed 2026-05-26 — 7/7 (Step 6 descoped) + extension: bookva-minio container + external port-bind для bookva-db/bookva-minio. + +## Post-closure follow-up в той же сессии + +- **bookva-minio container added** (user request — separate MinIO instance вместо bucket-split в shared MinIO). Image `minio:RELEASE.2020-07-13` (parity с books-minio), volume bookva-minio-data (1.2G — cp -a `/usr/docker/minio/data/books`), Portainer stack ID 49. Same MINIO creds для zero-config-change. Bookva apps reach через `http://bookva-minio:9000` (internal). bookva-overlay templates updated (s3.endpoint, bucket=books). +- **External access для bookva-db** + **bookva-minio**: port-bind на ALT портах (books-db занимает 3306, books-minio занимает 9000). + - `bookva-db` → `89.253.255.133:33306` (MariaDB). Verified — handshake `10.6.26-MariaDB-ubu2204` ✓. + - `bookva-minio` → `http://89.253.255.133:9001` (S3 API). Verified — 403 anon (sig required) = service alive ✓. + - Traefik HTTPS labels добавлены для `bookva-minio.kzntsv.site` (активируется когда DNS A-record добавлен в reg.ru). +- **Step 6 descoped** — PWA redirect modal для одного user'а (id=1, Bookva founder) = over-engineering. Substitute = manual heads-up учредителю Bookva перед cutover. Trade-off acceptable (краткое недоумение «где Bookva?» если откроет старый bookmark post-cutover). ## Closure note