Reverse Proxy & SSL
Das All-in-One Image hat einen eingebauten Caddy-Proxy mit optionalem Auto-HTTPS. Wenn du einen externen Reverse Proxy (nginx, Apache, Traefik) davor schaltest, folge dieser Anleitung.
Eingebautes Auto-HTTPS (ohne externen Proxy)
Section titled “Eingebautes Auto-HTTPS (ohne externen Proxy)”Caddy kann automatisch HTTPS-Zertifikate via Let’s Encrypt ausstellen — kein externer Proxy nötig:
docker run -d \ --name finanalyzer \ -p 80:80 -p 443:443 \ -v finanalyzer-data:/data \ -e DB_PASSWORD=mein-sicheres-passwort \ -e KEYCLOAK_ADMIN_PASSWORD=admin-passwort \ -e KEYCLOAK_DB_PASSWORD=kc-db-passwort \ -e CADDY_DOMAIN=finance.example.com \ -e EXTERNAL_URL=https://finance.example.com \ finanalyzer/allinone:latestVoraussetzungen: Domain mit A-Record auf die Server-IP, Ports 80 + 443 offen.
All-in-One hinter einem externen Reverse Proxy
Section titled “All-in-One hinter einem externen Reverse Proxy”Wenn du einen eigenen Reverse Proxy (nginx, Apache, Traefik, Caddy) betreibst:
-
Container starten (interner Port)
Terminal window docker run -d \--name finanalyzer \-p 8082:80 \-v finanalyzer-data:/data \-e DB_PASSWORD=mein-sicheres-passwort \-e KEYCLOAK_ADMIN_PASSWORD=admin-pw \-e KEYCLOAK_DB_PASSWORD=kc-db-pw \-e EXTERNAL_URL=https://finance.example.com \finanalyzer/allinone:latest -
Reverse Proxy konfigurieren
Leite
https://finance.example.com→http://localhost:8082weiter. -
SSL-Zertifikat prüfen
Terminal window echo | openssl s_client -connect finance.example.com:443 2>/dev/null \| openssl x509 -noout -dates -subject
Troubleshooting
Section titled “Troubleshooting”Zertifikat wird nicht ausgestellt (Caddy Auto-HTTPS)
Section titled “Zertifikat wird nicht ausgestellt (Caddy Auto-HTTPS)”- DNS prüfen:
dig +short finance.example.commuss die Server-IP zurückgeben - Port 80 offen? Let’s Encrypt braucht HTTP-Challenge auf Port 80
- Rate Limits: Let’s Encrypt erlaubt max. 5 Zertifikate pro Domain pro Woche
- Logs prüfen:
docker logs finanalyzer --tail 50
Infinite Redirect Loop
Section titled “Infinite Redirect Loop”- Stelle sicher, dass der externe Proxy SSL terminiert und intern HTTP weiterleitet
- Kein doppeltes SSL (externer Proxy + Caddy CADDY_DOMAIN gleichzeitig)
Nächste Schritte
Section titled “Nächste Schritte”- Backup-Strategie - Daten sichern
- Konfiguration - Alle Environment Variables