feat: add resticontainer backup labels for traefik/adguard/xray

Per the "Core Apex (all nodes)" policy: traefik /etc/traefik/dynamic,
adguard /opt/adguardhome/conf, xray /etc/xray/config.jsonc. Profile-gated
services are only discovered on nodes that run them.
This commit is contained in:
deytenit committed 2026-07-07 21:38:25 +03:00
1 parent c100db57fe
commit 53d3bedca6
1 file changed
+12
+12
View File
@@ -23,6 +23,10 @@ services:
command: ["-c", "/etc/xray/config.jsonc"] command: ["-c", "/etc/xray/config.jsonc"]
restart: unless-stopped restart: unless-stopped
user: "0:0" user: "0:0"
labels:
# backup (resticontainer, core/all-nodes): xray config only (logs + shm are ephemeral)
- "restic.enable=true"
- "restic.backup.paths=/etc/xray/config.jsonc"
security_opt: security_opt:
- no-new-privileges:true - no-new-privileges:true
@@ -144,6 +148,10 @@ services:
- "traefik.http.middlewares.apex-adguard-strip-prefix.stripprefix.prefixes=/adguard" - "traefik.http.middlewares.apex-adguard-strip-prefix.stripprefix.prefixes=/adguard"
- "traefik.http.routers.apex-adguard.service=apex-adguard" - "traefik.http.routers.apex-adguard.service=apex-adguard"
- "traefik.http.services.apex-adguard.loadbalancer.server.port=3000" - "traefik.http.services.apex-adguard.loadbalancer.server.port=3000"
# backup (resticontainer, core/all-nodes): dynamic routing rules only
# (letsencrypt certs are regenerable via ACME/Cloudflare DNS-01)
- "restic.enable=true"
- "restic.backup.paths=/etc/traefik/dynamic"
security_opt: security_opt:
- no-new-privileges:true - no-new-privileges:true
@@ -157,6 +165,10 @@ services:
- ${APEX_TIER1}/adguard/conf:/opt/adguardhome/conf - ${APEX_TIER1}/adguard/conf:/opt/adguardhome/conf
environment: environment:
<<: *shared-environment <<: *shared-environment
labels:
# backup (resticontainer, core/all-nodes): adguard config only (work data regenerable)
- "restic.enable=true"
- "restic.backup.paths=/opt/adguardhome/conf"
network_mode: "service:traefik" network_mode: "service:traefik"
restart: unless-stopped restart: unless-stopped
cap_add: cap_add: