Umgebungsvariablen und die .env-Datei konfigurieren
MobilityManager wird über die standardmäßige .NET-Konfiguration eingerichtet, die aus Umgebungsvariablen liest. Dieser Artikel listet die Einstellungen auf, die Sie am häufigsten angeben, und erklärt, wie die .env-Datei diese in die Docker-Compose-Stacks einspeist.
Wie Umgebungsvariablen auf Einstellungen abgebildet werden
Verschachtelte Konfigurationsschlüssel verwenden in Form von Umgebungsvariablen einen doppelten Unterstrich (__) als Trennzeichen. Beispielsweise wird aus Jwt:Key die Variable Jwt__Key, und aus ConnectionStrings:SystemConnection wird ConnectionStrings__SystemConnection.
Kerneinstellungen
| Variable | Beschreibung | Erforderlich | Standard |
|---|---|---|---|
DatabaseProvider | PostgreSQL oder SqlServer | Ja | — |
ConnectionStrings__SystemConnection | Verbindungszeichenfolge der Systemdatenbank | Ja | — |
ConnectionStrings__TenantConnection | Verbindungszeichenfolge der Mandantendatenbank | Ja | — |
Jwt__Key | JWT-Signaturschlüssel (mind. 32 Byte) | Ja | — |
Jwt__Issuer | JWT-Aussteller-Kennung | Nein | CK.MobilityManager |
Jwt__Audience | JWT-Zielgruppen-Kennung | Nein | CK.MobilityManager.Users |
DocumentStorage__EnableEncryptionAtRest | Dokumentverschlüsselung im Ruhezustand umschalten | Nein | true |
DocumentStorage__LocalEncryptionKey | Base64-32-Byte-Schlüssel, erforderlich bei aktivierter Verschlüsselung | Bedingt | — |
License__PublicKey | Öffentlicher RSA-Schlüssel zur Lizenzvalidierung | Nein | — |
ASPNETCORE_ENVIRONMENT | Umgebungsname | Nein | Production |
ASPNETCORE_URLS | Kestrel-Bindung innerhalb des Containers | Nein | http://+:8080 |
Die .env-Datei für Docker Compose
Kopieren Sie .env.example nach .env und legen Sie Ihre eigenen Werte fest. Die Compose-Dateien lesen Variablen wie POSTGRES_PASSWORD, JWT_KEY, DOCKER_REGISTRY, DOCKER_IMAGE und VERSION und speisen die daraus resultierende Konfiguration in die Container ein:
POSTGRES_PASSWORD=YourStrongPassword123!
JWT_KEY=YourSecretKeyThatMustBeAtLeast32CharactersLong!
JWT_ISSUER=CK.MobilityManager
JWT_AUDIENCE=CK.MobilityManager.Users
DOCKER_REGISTRY=ghcr.io
DOCKER_IMAGE=your-org/ck-mobility-manager
VERSION=latest
Warnung: Die Werte in
.env.examplesind Platzhalter. Der BeispielwertJWT_KEYist ein bekannter, eingecheckter Standardwert und wird außerhalb von Development abgelehnt — erzeugen Sie stets Ihren eigenen.
Wo jede Umgebung die Konfiguration liest
- Docker Compose: die
.env-Datei sowie Werte, die in den Compose-Service-Definitionen fest hinterlegt sind. - Kubernetes: die ConfigMap
mobilitymanager-configund das Secretmobilitymanager-secrets. - Veröffentlichte Bereitstellung: Umgebungsvariablen aus Ihrem Prozessmanager sowie
appsettings.json.
Tipp: Halten Sie Geheimnisse (Datenbankkennwörter,
Jwt__Key, den Verschlüsselungsschlüssel) aus ConfigMaps und der Versionsverwaltung heraus. Verwenden Sie einen Secret-Store und speisen Sie sie zur Laufzeit ein.
Verwandte Artikel
- Die Datenbank-Verbindungszeichenfolgen konfigurieren
- Den JWT-Signaturschlüssel für die Produktion festlegen
- Den Schlüssel zur Dokumentverschlüsselung im Ruhezustand konfigurieren
- Checkliste zur Produktionshärtung