meldestelle/docs/02_Guides/start-local.md

3.2 KiB
Raw Blame History

type status owner tags
Guide ACTIVE DevOps Engineer
setup
local
docker
gradle

Start Local (Lokales Setup)

Kurzanleitung, um das Projekt lokal in wenigen Minuten zu starten DesktopFirst mit optionalem DockerBackend.

Voraussetzungen (exakte Versionen)

  • Git ≥ 2.40
  • JDK 25 (Temurin/Eclipse Adoptium empfohlen) Projekttoolchain lädt bei Bedarf automatisch
  • Gradle Wrapper 9.4.0 (wird über ./gradlew automatisch verwendet)
  • Docker Engine ≥ 24, Docker Compose v2 ≥ 2.24

Hinweise:

  • Die JavaToolchain wird per Gradle automatisch heruntergeladen (org.gradle.java.installations.auto-download=true). Ein lokal installiertes JDK 25 wird dennoch empfohlen für IDERuns.
  • Auf AppleSilicon (arm64) sind die DockerImages optimiert; Keycloak nutzt start --optimized.

Schnellstart (nur Backend in Docker)

# 1) Repository klonen
git clone https://github.com/StefanMoCoAt/meldestelle.git
cd meldestelle

# 2) Runtime-Environment vorbereiten
#    Kopiere die Vorlage.
cp .env.example .env

# 3) Infrastruktur starten (Postgres, Valkey, Keycloak, Tracing, Service Discovery)
docker compose --profile infra up -d

# 4) Backend starten (Gateway + Ping Service)
docker compose --profile backend up -d

Sobald die Infrastruktur läuft, erreichst du unter anderem:

DesktopApp starten (Compose Desktop)

Die DesktopApp ist der primäre EntwicklungsEntryPoint.

# 1) Abhängigkeiten bauen (optional; Gradle lädt automatisch beim ersten Run)
./gradlew :frontend:shells:meldestelle-desktop:build

# 2) DesktopApp starten
./gradlew :frontend:shells:meldestelle-desktop:run

Voraussetzung: Für Features, die BackendKonnektivität benötigen (z. B. Login, Stammdaten), muss das DockerBackend (infra + backend) laufen. Für rein lokale/offline Flows kann die App auch ohne Docker gestartet werden.

Tests ausführen

# Führt alle Tests aus
./gradlew test

# Spezifisches Backend-Modul testen
./gradlew :backend:services:ping:ping-service:test

Troubleshooting

  • Dienste starten nicht? Ports belegt oder Logs prüfen:
    docker ps
    docker logs <container-name>
    
  • Infrastruktur neu starten:
    docker compose down -v
    docker compose --profile infra up -d
    
  • EnvironmentVariablen: werden aus der .envDatei im RootVerzeichnis geladen.
  • Gradle/Java Probleme? Stelle sicher, dass JDK 25 aktiv ist bzw. lasse die GradleToolchain das passende JDK laden.
  • ARM64 (Apple Silicon): Falls Images nicht starten, lösche alte Images und starte neu: docker compose down -v && docker system prune -af && docker compose --profile infra up -d.

Weiterführende Hinweise

  • README QuickStart (DesktopFirst): README.md
  • ArchitekturKurzkonzept (OfflineFirst Desktop & Backend): docs/01_Architecture/konzept-offline-first-desktop-backend-de.md
  • ADRs: docs/01_Architecture/adr/
  • Aktuelle Reports: docs/90_Reports/