meldestelle/docs/05_Deployment/2026-04-15_Online-Nennung-Deployment.md
2026-04-15 11:49:31 +02:00

71 lines
1.9 KiB
Markdown

# 🚀 Deployment Guide - Online-Nennung (Neumarkt 2026)
Dieser Guide beschreibt den Prozess zum Deployment des "Biest" Online-Nennung Stacks auf den Produktions-Server.
## 1. Voraussetzungen
- Docker & Docker Compose installiert.
- Zugriff auf den OEPS SMTP Server oder eine Alternative.
- Domain (z.B. `nennung.mo-code.at`) zeigt auf den Server.
## 2. Infrastruktur (Backend)
Der Stack wird über `dc-backend.yaml` gestartet.
### Umgebungsvariablen (`.env` Datei am Server)
Folgende Variablen müssen gesetzt sein:
```env
# Datenbank
POSTGRES_USER=pg-user
POSTGRES_PASSWORD=dein-geheimes-passwort
# SMTP (für Bestätigungs-Mails)
MAIL_SMTP_HOST=smtp.mo-code.at
MAIL_SMTP_PORT=587
MAIL_SMTP_USER=online-nennen@mo-code.at
MAIL_SMTP_PASSWORD=dein-smtp-passwort
```
### Starten
```bash
docker-compose -f dc-backend.yaml up -d mail-service postgres consul
```
## 3. Frontend (Wasm Web App)
Die Web-App kommuniziert direkt mit dem `mail-service`.
### Build
```bash
./gradlew :frontend:shells:meldestelle-web:wasmJsBrowserDistribution
```
Die Artefakte liegen in `frontend/shells/meldestelle-web/build/dist/wasmJs/productionExecutable/`.
### Konfiguration (Laufzeit)
In der `index.html` oder über ein vorgeschaltetes Nginx können globale Variablen gesetzt werden, um die Backend-URLs zu
steuern:
```html
<script>
window.MAIL_SERVICE_URL = "https://nennung.mo-code.at/api/mail";
window.API_BASE_URL = "https://nennung.mo-code.at/api";
</script>
```
## 4. Sicherheit & Härtung
- **CORS:** Der `MailController` ist aktuell für `localhost:8080` und `nennung.mo-code.at` freigeschaltet.
- **Reverse Proxy:** Es wird empfohlen, einen Nginx oder Traefik mit SSL (Let's Encrypt) vor den Stack zu schalten.
- **Mail-Absender:** Die Absender-Adresse ist im `MailController` hartcodiert auf `online-nennen@mo-code.at`. Dies
sollte bei Bedarf angepasst werden.
---
*Dokumentiert durch den Lead Architect am 15. April 2026.*