a202d3d81757e8e73b2cb17b95eeb2e5433a1576
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Successful in 7m55s
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Successful in 6m56s
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Successful in 1m55s
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Successful in 1m37s
Adjust Caddyfile configuration and prevent Caddy template action conflicts in frontend runtime setup
Adjust Caddyfile configuration and prevent Caddy template action conflicts in frontend runtime setup
Meldestelle
Modulares System für Pferdesportveranstaltungen — gebaut mit Domain-Driven Design, Kotlin Multiplatform und Microservices.
📚 Dokumentation — Single Source of Truth
Die gesamte Projektdokumentation (Architektur, Fachdomäne, Entwickler-Anleitungen) befindet sich im /docs-Verzeichnis.
Starte hier: → docs/README.md
| Bereich | Inhalt |
|---|---|
| 01_Architecture | Master Roadmap, ADRs, C4-Modelle |
| 02_Guides | Setup-Anleitungen, Entwickler-Guidelines |
| 03_Domain | Fachlichkeit, Turnierregeln, Entities |
| 07_Infrastructure | Docker, Keycloak, CI/CD, Zora-Infrastruktur |
🏗️ Tech Stack
| Schicht | Technologie |
|---|---|
| Backend | Kotlin, Spring Boot 3.x, Spring Cloud Gateway |
| Frontend | Kotlin Multiplatform (KMP), Compose Multiplatform |
| Datenbank | PostgreSQL + Exposed / JPA |
| Auth | Keycloak (OAuth2 / OIDC) |
| Cache | Valkey |
| Service Discovery | Consul |
| Tracing | Zipkin |
| CI/CD | Gitea Actions + Gitea Registry |
| Infrastruktur | Proxmox VE, Docker Compose, Pangolin Tunnel |
🚀 Quick Start (Lokal)
# 1. Umgebungsvariablen vorbereiten (nur beim ersten Mal)
cp .env.example .env
# 2. Infrastruktur starten (Postgres, Keycloak, Valkey, Consul, Zipkin)
docker compose -f docker-compose.yaml -f dc-infra.yaml up -d
# 3. Backend-Services starten (Gateway, Ping-Service)
docker compose -f docker-compose.yaml -f dc-backend.yaml up -d
# 4. Ops-Stack starten (Prometheus, Grafana)
docker compose -f docker-compose.yaml -f dc-ops.yaml up -d
# 5. Optional: Web-App starten
docker compose -f docker-compose.yaml -f dc-gui.yaml up -d
⚠️ Reihenfolge beachten: Infra muss
healthysein, bevor Backend gestartet wird. Keycloak benötigt ~60–90 Sekunden zum Hochfahren.
Wichtige lokale Ports
| Service | URL |
|---|---|
| API-Gateway | http://localhost:8081 |
| Keycloak Admin | http://localhost:8180 |
| Consul UI | http://localhost:8500 |
| Grafana | http://localhost:3000 |
| Zipkin | http://localhost:9411 |
🤝 Beitragen
Beiträge sind willkommen. Bitte lies zunächst die Entwickler-Guides unter docs/02_Guides.
📜 Lizenz
Dieses Projekt steht unter der MIT License.
Languages
Kotlin
93.9%
Dockerfile
3.2%
HTML
1.3%
Shell
0.8%
Python
0.5%
Other
0.3%