ops(vds): Portainer-canonical rule + migrate 12 ad-hoc stacks
Findings из сессии 2026-05-22 (user корректировка: «через портейнер!»): deploy через ssh + docker compose up — anti-pattern, breaks ops surface homogeneity. Все stacks на VDS должны быть Portainer-managed. Retro-migrated 12 stacks (board-viewer, ntfy, registry, verdaccio, gitea, owncloud, postgres, mongo, mariadb, redis, minio-imgproxy, mssql) через JWT auth + /api/stacks/create/standalone/string API. Migration script template в новой wiki концепции. Skipped traefik+portainer (management plane recreate ломает access). Gotchas закреплены в portainer-stack-management-vds.md §Gotchas: - env_file: .env requires strip + env array в API payload - ./ binds для sibling files (nginx.conf) absolutize → /opt/stacks/<>/ - docker login registry.kzntsv.site обязателен на VDS host - container recreate downtime ~30-60s/stack (sequential) - Portainer working_dir /data/compose/<id>/ не /opt/stacks/<name>/ CLAUDE.md новое правило: VDS docker stacks → Portainer canonical. STATUS header updated; board-viewer-vds-deploy closed 🟢 как часть sweep. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -11,3 +11,9 @@ follow project discipline
|
||||
delegate to interns when allowed
|
||||
recommend, don't menu
|
||||
we're on Windows
|
||||
|
||||
# VDS ops rule
|
||||
|
||||
Все docker-compose stacks на VDS управляются через Portainer (`https://portainer.vds.kzntsv.site`).
|
||||
`ssh + docker compose up -d` на VDS — anti-pattern. См. [`portainer-stack-management-vds`](.wiki/concepts/portainer-stack-management-vds.md) для migration script + gotchas.
|
||||
Исключения: `traefik` + `portainer` (management plane, ad-hoc compose).
|
||||
|
||||
Reference in New Issue
Block a user