feat(restore): traefik restore smoke test
Borg-Extract von dynamic/ und letsencrypt/, Traefik startet mit File-Provider gegen restaurierte Config, /ping Health antwortet. Bewusst kein docker.sock (wuerde produktive Container discovern), kein CF-Token (keine DNS-Challenge), keine produktiven Ports. acme.json-Existenz und -Groesse wird geprueft, TLS-Validitaet nicht. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
services:
|
||||
restoretest-traefik:
|
||||
image: traefik:v3.7@sha256:6b9cbca6fac42ab0075f5437d8dc1685cfd188626d8d515839ea94f8b6271c42
|
||||
container_name: restoretest-traefik
|
||||
restart: "no"
|
||||
command:
|
||||
# Minimale Config fuer den Smoke: kein Docker-Provider (kein docker.sock),
|
||||
# kein ACME (kein CF-Token), kein TLS-Entrypoint. Nur:
|
||||
# - File-Provider mit restauriertem dynamic/-Verzeichnis
|
||||
# - HTTP-Entrypoint auf Test-Port
|
||||
# - Ping-Endpoint fuer Health-Check
|
||||
- --ping=true
|
||||
- --ping.entrypoint=web
|
||||
- --providers.file.directory=/dynamic
|
||||
- --providers.file.watch=false
|
||||
- --entrypoints.web.address=:80
|
||||
- --api.dashboard=false
|
||||
- --log.level=INFO
|
||||
ports:
|
||||
- "127.0.0.1:18880:80"
|
||||
volumes:
|
||||
# Restauriertes dynamic/-Verzeichnis aus Borg (read-only)
|
||||
- /mnt/user/backups/restore-lab/traefik/dynamic:/dynamic:ro
|
||||
# Restauriertes letsencrypt/ fuer Existenz-Nachweis (read-only)
|
||||
- /mnt/user/backups/restore-lab/traefik/letsencrypt:/letsencrypt:ro
|
||||
# KEIN docker.sock — Test-Traefik darf keine produktiven Container discovern
|
||||
# KEIN CF-Token — keine DNS-Challenge im Smoke
|
||||
security_opt:
|
||||
- no-new-privileges:true
|
||||
Reference in New Issue
Block a user