Die Plattform mit Docker Compose für die Entwicklung betreiben
Das Repository enthält einen Docker-Compose-Stack für lokale Entwicklung und Tests. Er betreibt eine PostgreSQL-Datenbank und die Anwendung MobilityManager (API zuzüglich gebündelter Angular-Oberfläche) gemeinsam, mit einem optionalen pgAdmin-Werkzeug. Dieser Artikel führt Sie durch die Nutzung.
Was der Stack enthält
- postgres — eine
postgres:16-alpine-Datenbank, verfügbar über Port 5432, initialisiert mit der System- und der Mandantendatenbank. - api — die aus dem Dockerfile des API-Dienstes gebaute Anwendung, verfügbar über Port 8080, die sowohl die API als auch die Oberfläche bereitstellt.
- pgadmin — eine optionale Datenbank-Oberfläche auf Port 5050, die nur mit dem Profil
toolsgestartet wird.
Der API-Dienst läuft mit ASPNETCORE_ENVIRONMENT=Production und DatabaseProvider=PostgreSQL, wobei die Verbindungszeichenfolgen bereits auf den Dienst postgres verweisen.
Erforderliche Einstellungen bereitstellen
Die Compose-Datei setzt einen JWT-Signaturschlüssel voraus und akzeptiert ein Datenbankkennwort. Erstellen Sie eine .env-Datei im Stammverzeichnis des Repositorys:
POSTGRES_PASSWORD=DevPassword123!
JWT_KEY=YourSecretKeyThatMustBeAtLeast32CharactersLong!
Warnung:
JWT_KEYist obligatorisch — der Stack läuft als Production, und es gibt keinen eingecheckten Ausweichschlüssel, sodass Compose sofort abbricht, wenn er fehlt. Verwenden Sie den Beispielschlüssel aus.env.examplenicht erneut; er ist ein bekannter Wert und wird außerhalb von Development abgelehnt.
Den Stack starten
- Bauen und starten Sie die Dienste:
docker compose up --build - Warten Sie, bis der Health-Check der Datenbank erfolgreich ist; die API wartet auf eine funktionierende Datenbank, bevor sie startet.
- Öffnen Sie
http://localhost:8080in Ihrem Browser. Beim ersten Start werden Sie zum Einrichtungsassistenten weitergeleitet.
Optionale Datenbankwerkzeuge
Um pgAdmin zusammen mit dem Stack zu starten, aktivieren Sie das Profil tools:
docker compose --profile tools up -d
pgAdmin ist dann unter http://localhost:5050 mit den Zugangsdaten aus PGADMIN_EMAIL und PGADMIN_PASSWORD verfügbar.
Zustand prüfen und beenden
Der API-Container verfügt über einen integrierten Health-Check, der /healthz aufruft. Sie können ihn manuell überprüfen:
curl http://localhost:8080/healthz
Stoppen und entfernen Sie die Container, wenn Sie fertig sind:
docker compose down
Hinweis: Die Datenbankdaten bleiben zwischen den Läufen im Volume
postgres_dataerhalten. Um vollständig neu zu beginnen, entfernen Sie die Volumes mitdocker compose down -v.
Verwandte Artikel
- Die Plattform mit Docker Compose in der Produktion betreiben
- Umgebungsvariablen und die .env-Datei konfigurieren
- Den JWT-Signaturschlüssel für die Produktion festlegen
- Die Health-Endpunkte verstehen