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:
@@ -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
|
||||
Reference in New Issue
Block a user