cert-manager legte die Challenge in einem separaten Ingress ohne TLS an.
Die HTTP->HTTPS-Umleitung schickte die Pruefung auf HTTPS, wo nur die App
antwortete ("expected <token> but got <!doctype html>"), das Zertifikat
wurde nie ausgestellt und Traefik zeigte sein Default-Zertifikat.
Mit http01-edit-in-place landet der Challenge-Pfad im App-Ingress und
gilt damit auch unter HTTPS.
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>
- Dateinamen nach Wabenhain-Schema (01-configmap, 02-secret,
03-storage, 04-postgres, 05-app-deployment, 06-ingress,
07-worker-cronjob, 08-networkpolicy); Secret-Vorlage als
02-secret.yaml.example, echte 02-secret.yaml gitignored.
- Namespace: Pod Security "baseline" erzwungen, "restricted" als warn/audit.
"restricted" kann den HTTP-01-Solver-Pod von cert-manager abweisen und
damit die Zertifikatsausstellung blockieren.
- NetworkPolicy nur noch fuer PostgreSQL; keine Policy vor der App (wie
Wabenhain/ApiCore), da sie bei Traefik im Host-Netzwerk die Seite sperrt.
- README: kompletter Neuaufbau inkl. Freigabe der Retain-PVs nach
"kubectl delete namespace", Zertifikats-Diagnose.
Co-Authored-By: Claude Opus 5.5 (1M context) <[email protected]>