diet: заведён плейбук, периметр и бэкапы

- playbook-diet.yml и files/diet: образ через app_image, uid=gid=1111,
  каталоги config/data/cache, backup-targets со строкой data/
- блок сайта в Caddy разделён: /api/* идёт мимо Authelia под собственную
  аутентификацию, клиентские Remote-* срезаются на уровне сайта
- правило Authelia one_factor без subject: пользователи шире группы admins
This commit is contained in:
av
2026-09-06 11:50:40 +03:00
parent 41284ed33f
commit 8e1d5f8112
8 changed files with 238 additions and 0 deletions
+28
View File
@@ -0,0 +1,28 @@
# Образ собирается локально и доставляется на сервер ролью app_image
# (см. playbook-diet.yml): тег — случайный BUILD_ID каждого прогона,
# в реестре образа нет, поэтому pull_policy: never.
#
# В образе нет оболочки (distroless): зайти внутрь работающего контейнера
# нечем, разбор идёт по журналу и GET /healthz.
services:
diet_app:
image: "{{ app_name }}:{{ app_image_tag }}"
container_name: diet_app
restart: unless-stopped
pull_policy: never
user: "{{ owner_create_result.uid }}:{{ owner_create_result.group }}"
networks:
- "web_proxy_network"
volumes:
- "{{ config_dir }}:/config:ro"
- "{{ data_dir }}:/var/lib/diet"
- "{{ cache_dir }}:/var/cache/diet"
command:
- "--config"
- "/config/config.toml"
networks:
web_proxy_network:
external: true