35 lines
No EOL
1,021 B
Markdown
35 lines
No EOL
1,021 B
Markdown
# Secrets-Management für Unraid
|
|
|
|
## Ziel
|
|
|
|
Für produktiven Betrieb dürfen DB/JWT/Encryption Secrets nicht im Klartext in Compose/Docs landen.
|
|
|
|
## Strategie
|
|
|
|
1. **Env-File-Strategie**: Secrets werden via `.env`-Datei geladen.
|
|
2. **Unraid Secret Mount**: Secrets werden über Unraid's Secret-Mounting Mechanismus bereitgestellt.
|
|
3. **Preflight-Check**: Vor dem Start wird geprüft, ob alle Pflicht-Secrets vorhanden sind.
|
|
|
|
## Dokumentation
|
|
|
|
- `.env.example` enthält Platzhalter für alle Secrets.
|
|
- Die `.env`-Datei wird nicht im Repository getrackt.
|
|
- Secrets werden in Unraid via Secret-Mounting bereitgestellt.
|
|
|
|
## Beispiel-Template
|
|
|
|
```bash
|
|
# .env.example
|
|
PORT=3000
|
|
DB_HOST=80.74.142.125
|
|
DB_PORT=3306
|
|
DB_NAME=helpyourneighbour
|
|
DB_USER=helpyourneighbour
|
|
DB_PASSWORD=change-me
|
|
JWT_SECRET=change-me-super-secret
|
|
DATA_ENCRYPTION_KEY=base64-32-byte-key
|
|
```
|
|
|
|
## Preflight-Check
|
|
|
|
Beim Start des Backends wird geprüft, ob alle Pflicht-Secrets vorhanden sind. Falls nicht, wird mit einer verständlichen Meldung abgebrochen. |