From 5844d8dddf31a3db97b652d6e3856689eaaa328e Mon Sep 17 00:00:00 2001 From: vitya Date: Fri, 28 Aug 2026 08:47:53 +0300 Subject: [PATCH] =?UTF-8?q?docs(runbook):=20gotcha=202=20=E2=80=94=20?= =?UTF-8?q?=D0=BA=D0=BD=D0=B8=D0=B3=D0=B8-=D1=81=D1=82=D0=B5=D0=BA=D0=B8?= =?UTF-8?q?=20=D1=87=D0=B5=D1=80=D0=B5=D0=B7=20portainer=20endpoint=201=20?= =?UTF-8?q?(books=20VDS),=20=D1=81=D0=B8=D0=BD=D1=85=D1=80=D0=BE=D0=BD?= =?UTF-8?q?=D0=BD=D0=BE=D1=81=D1=82=D1=8C=20=D1=84=D0=B0=D0=B9=D0=BB/Porta?= =?UTF-8?q?iner?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .wiki/concepts/books-vds-memory-optimize-runbook.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.wiki/concepts/books-vds-memory-optimize-runbook.md b/.wiki/concepts/books-vds-memory-optimize-runbook.md index eff4cb8..00acbc9 100644 --- a/.wiki/concepts/books-vds-memory-optimize-runbook.md +++ b/.wiki/concepts/books-vds-memory-optimize-runbook.md @@ -78,7 +78,7 @@ docker rm -f buildx_buildkit_builder-1ba06752-bf56-4b50-88c5-ce1b48f44a4e0 build ## Gotchas 1. **OOM ежедневно ~06:06** — пик в бэкап-окно (mongodump+mariadb-dump+ES snapshot в 06:00 MSK). Урезка снижает, но ХОСТ обделён (3.9GB) — радикальный фикс = апгрейд RAM или Manticore вместо ES. -2. **Управление books VDS — файловые compose** `/usr/docker/*/docker-compose.yml`, НЕ Portainer-kzntsv. `portainer.kzntsv.site` endpoints — только `primary`+`stostayer`, книг там нет. Свой Portainer на books VDS — без host-port (нестандартно), напрямую не доступен. **Канон kzntsv «всё через Portainer» на книги не распространяется.** +2. **Книги-стеки — через `portainer.kzntsv.site` endpoint 1 (= books VDS)**: `GET /api/stacks` показывает id 22–51 (books/web/api/ntfy/ops-mcp/chrome/proxy/imgproxy/minio/mongo/db/elasticsearch + bookva-*). Часть из них — **files-based** `/usr/docker/*/docker-compose.yml` (напр. books-job-scheduler-mongo урезан файлом + `docker compose up -d`). При правке стека держать Portainer-источник и файл синхронными, не плодить расхождения. 3. **`com.docker.compose.project.config_files=/data/compose/22`** (label) — старый путь Portainer; `/data/compose/*` на диске НЕ существует. Реальный источник — `/usr/docker/*/docker-compose.yml`. 4. **compose-файлы в CRLF** (`\r\n`) — python-патч учитывать line-ending (иначе needle не матчит). 5. **`bookva-es`** — **Portainer стек 37 (endpoint 1)**. Доступ есть: `BOOKS_PORTAINER_URL` + `BOOKS_PORTAINER_API_KEY` из `pass books-vds/full-env`. НО `GET /api/stacks/:id` НЕ отдаёт `stackFileContent` (в этой версии Portainer), поэтому compose реконструируется из `docker inspect` и обновляется через `PUT` стека. Не менять вслепую без этих данных.