All checks were successful
Build and Publish Docker Images / build-and-push (., backend/infrastructure/gateway/Dockerfile, api-gateway, api-gateway) (push) Successful in 8m44s
Build and Publish Docker Images / build-and-push (., backend/services/ping/Dockerfile, ping-service, ping-service) (push) Successful in 7m27s
Build and Publish Docker Images / build-and-push (., config/docker/caddy/web-app/Dockerfile, web-app, web-app) (push) Successful in 1m49s
Build and Publish Docker Images / build-and-push (., config/docker/keycloak/Dockerfile, keycloak, keycloak) (push) Successful in 1m56s
- Added new comments and examples in `.env.example` for clarity and proper configuration. - Improved readability and structure of `Caddyfile` with better indentation, comments, and routing logic. Signed-off-by: Stefan Mogeritsch <stefan.mo.co@gmail.com>
44 lines
977 B
Caddyfile
44 lines
977 B
Caddyfile
{
|
||
# TLS wird durch Pangolin/Traefik auf dem VPS terminiert – hier kein HTTPS nötig
|
||
auto_https off
|
||
|
||
servers {
|
||
metrics
|
||
}
|
||
}
|
||
|
||
:4000 {
|
||
# Root-Verzeichnis für statische Assets
|
||
root * /usr/share/caddy
|
||
|
||
# Logging (strukturiert, JSON)
|
||
log {
|
||
output stdout
|
||
format json
|
||
}
|
||
|
||
# Komprimierung
|
||
encode gzip zstd
|
||
|
||
# Caddy-Template-Engine für config.json (liefert API_BASE_URL & KEYCLOAK_URL an den Browser)
|
||
templates {
|
||
mime application/json
|
||
}
|
||
|
||
# API-Proxy (höchste Priorität – vor dem SPA-Fallback)
|
||
handle /api/* {
|
||
reverse_proxy api-gateway:8081
|
||
}
|
||
|
||
# Health-Check-Endpunkt (für Pangolin Health-Check konfigurieren: GET /health)
|
||
handle /health {
|
||
respond "healthy" 200
|
||
}
|
||
|
||
# SPA-Fallback: existierende Dateien direkt ausliefern, sonst index.html
|
||
handle {
|
||
try_files {path} /index.html
|
||
file_server
|
||
}
|
||
}
|