Skip to content

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:

Terminal window
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:latest

Voraussetzungen: 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:

  1. 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
  2. Reverse Proxy konfigurieren

    Leite https://finance.example.comhttp://localhost:8082 weiter.

  3. SSL-Zertifikat prüfen

    Terminal window
    echo | openssl s_client -connect finance.example.com:443 2>/dev/null \
    | openssl x509 -noout -dates -subject

Zertifikat wird nicht ausgestellt (Caddy Auto-HTTPS)

Section titled “Zertifikat wird nicht ausgestellt (Caddy Auto-HTTPS)”
  1. DNS prüfen: dig +short finance.example.com muss die Server-IP zurückgeben
  2. Port 80 offen? Let’s Encrypt braucht HTTP-Challenge auf Port 80
  3. Rate Limits: Let’s Encrypt erlaubt max. 5 Zertifikate pro Domain pro Woche
  4. Logs prüfen: docker logs finanalyzer --tail 50
  • Stelle sicher, dass der externe Proxy SSL terminiert und intern HTTP weiterleitet
  • Kein doppeltes SSL (externer Proxy + Caddy CADDY_DOMAIN gleichzeitig)