diff --git a/DEPLOYMENT_PLAN.md b/DEPLOYMENT_PLAN.md index e3fc2ff..f1ef74e 100644 --- a/DEPLOYMENT_PLAN.md +++ b/DEPLOYMENT_PLAN.md @@ -31,7 +31,7 @@ │ 127.0.0.1:18880 │ │ │ │ │ ┌───────────────────────────┼───────────────────┐ │ -│ │ Host nginx reverse proxy │ │ │ +│ │ Traefik v3 reverse proxy │ │ │ │ │ nexus.noveria.net :443 ───┘ │ │ │ └───────────────────────────────────────────────┘ │ │ │ @@ -135,10 +135,11 @@ docker compose exec web nginx -t ss -tlnp | grep 18880 ``` -### Host nginx Reverse Proxy +### Traefik Reverse Proxy Falls `nexus.noveria.net` nicht erreichbar: -- Host nginx Config prüfen: Proxy-Pass auf `http://127.0.0.1:18880` -- TLS-Zertifikat gültig? +- Traefik-Labels am `web`-Service prüfen (`traefik.http.routers.nexus.*`) +- `web` hängt am externen `proxy`-Netzwerk +- TLS-Zertifikat/Let's-Encrypt-Resolver in Traefik gültig? --- @@ -151,5 +152,5 @@ Falls `nexus.noveria.net` nicht erreichbar: | backend/Dockerfile | ✅ Multi-Stage .NET 10 | | frontend/Dockerfile | ✅ Multi-Stage Node 24 + nginx | | frontend/nginx.conf | ✅ CSP, Proxy, SPA-Routing | -| Host nginx Reverse Proxy | ⚠️ Muss auf Port 18880 zeigen | +| Traefik Reverse Proxy | ✅ Per Compose-Labels auf `web:80` | | Docker installiert auf VPS | ⚠️ Vorausgesetzt | diff --git a/phases/deployment.md b/phases/deployment.md index 3cb8b68..13509f5 100644 --- a/phases/deployment.md +++ b/phases/deployment.md @@ -169,7 +169,7 @@ Stelle sicher, dass `.env` existiert und alle `***`-Platzhalter ersetzt sind. 2. Backup vor produktiven Infrastrukturarbeiten 3. Docker-Stack auf dem VPS deployen 4. Datenbankmigration läuft automatisch beim Start (via `MigrateAsync`) -5. Nginx Proxy Manager und `nexus.noveria.net` verbinden +5. Traefik-Router fuer `nexus.noveria.net` per Compose-Labels verbinden 6. HTTPS, Header, Cookies und externe Erreichbarkeit validieren ## Abgeschlossene Deployment-Arbeit @@ -177,7 +177,7 @@ Stelle sicher, dass `.env` existiert und alle `***`-Platzhalter ersetzt sind. - [x] Produktions-`.env` mit starken, getrennten Secrets angelegt (2026-06-08) - [x] Datenbankmigration und kompletter Stack per Docker-Compose deployt - [x] Nexus auf dem VPS deployt (Docker Compose) -- [x] Nginx mit Let's Encrypt SSL fuer `nexus.noveria.net` konfiguriert +- [x] Traefik mit Let's Encrypt SSL fuer `nexus.noveria.net` konfiguriert - [x] HTTPS, Security-Header (HSTS, X-Content-Type-Options, X-Frame-Options), Cookies validiert - [x] Externe Erreichbarkeit bestaetigt (2026-06-09) - [x] CI/CD entkoppelt — Deploy darf automatisch (v3) oder manuell (2026-06-13) @@ -206,7 +206,7 @@ Stelle sicher, dass `.env` existiert und alle `***`-Platzhalter ersetzt sind. - /dashboard, /login → SPA-Routing korrekt - /api/v1/operations/snapshot → 401 Unauthorized (Auth-Schutz aktiv) - Let's Encrypt TLS-Zertifikat aktiv -- Nginx-Proxy → 127.0.0.1:18880 +- Traefik-Proxy → `nexus-web-1:80` ueber externes `proxy`-Netzwerk ## Incident-Hinweis (2026-06-14)