paths-and-naming
Пути и соглашения
Базовые пути на сервере
Репозиторий runner:
/home/supervisor/leonid_projects/duck-obsidian
Deploy tools:
/home/supervisor/leonid_projects/duck-obsidian/.deploy
Все garden deployments:
/home/supervisor/leonid_projects/obsidians
Один garden:
/home/supervisor/leonid_projects/obsidians/<slug>
Garden repo внутри deployment:
/home/supervisor/leonid_projects/obsidians/<slug>/site
Obsidian vault:
/home/supervisor/leonid_projects/obsidians/<slug>/site/<slug>-vault
Deploy log:
/home/supervisor/leonid_projects/obsidians/<slug>/logs/deploy.log
Структура garden deployment
/home/supervisor/leonid_projects/obsidians/<slug>/
site/ # GitHub repo garden
logs/ # deploy logs
docker-compose.yml # Caddy/build container setup
Caddyfile # Caddy отдаёт dist/
pull-and-rebuild.sh # pull/build/restart workflow
Имена systemd units
Для каждого garden timer и service называются по slug:
<slug>-pull.timer
<slug>-pull.service
Для текущего production-примера:
obsidian-duck-guide-pull.timer
obsidian-duck-guide-pull.service
Подробнее: Systemd timers по slug.
Docker container
Caddy container обычно называется:
<slug>-garden
Для текущего production-примера:
obsidian-duck-guide-garden
Deploy lock
Lock для deploy:
/tmp/<slug>-deploy.lock
Для текущего production-примера:
sudo lslocks | grep obsidian-duck-guide-deploy || true
Порты
Backend API панели:
127.0.0.1:3017
Garden Caddy containers слушают локальные порты из диапазона:
8089-8999
Проверка локального порта garden:
curl -I http://127.0.0.1:<port>/
Домены
Панель:
admin.obsidians.otc.guru
Gardens:
<slug>.obsidians.otc.guru
Пример:
obsidian-duck-guide.obsidians.otc.guru