# ========================================== # Meldestelle – Docker Compose Environment # Single Source of Truth (SSoT) # ========================================== # WARNING: This file contains secrets (passwords). # Do NOT commit this file to version control if it contains production secrets. # --- PROJECT --- PROJECT_NAME=meldestelle # Docker build versions (optional overrides) DOCKER_VERSION=1.0.0-SNAPSHOT DOCKER_BUILD_DATE=2026-02-02T15:00:00Z DOCKER_GRADLE_VERSION=9.3.1 # Check if 25 is intended (Early Access) or if LTS 21 was meant DOCKER_JAVA_VERSION=25 DOCKER_NODE_VERSION=24.12.0 DOCKER_NGINX_VERSION=1.28.0-alpine # Postgres POSTGRES_IMAGE=postgres:16-alpine POSTGRES_USER=pg-user POSTGRES_PASSWORD=pg-password POSTGRES_DB=pg-meldestelle-db POSTGRES_PORT=5432:5432 POSTGRES_DB_URL=jdbc:postgresql://postgres:5432/pg-meldestelle-db # --- VALKEY (formerly Redis) --- VALKEY_IMAGE=valkey/valkey:9-alpine VALKEY_PASSWORD= VALKEY_PORT=6379:6379 VALKEY_SERVER_HOSTNAME=valkey VALKEY_SERVER_PORT=6379 VALKEY_SERVER_CONNECT_TIMEOUT=5s VALKEY_POLICY=allkeys-lru VALKEY_MAXMEMORY=256mb # --- KEYCLOAK --- KEYCLOAK_IMAGE_TAG=26.4 KC_HEAP_MAX=1024m KC_COMMAND=start-dev --import-realm KC_ADMIN_USERNAME=kc-admin KC_ADMIN_PASSWORD=kc-password KC_DB=postgres KC_DB_SCHEMA=keycloak KC_DB_PASSWORD=meldestelle KC_HOSTNAME=localhost KC_PORT=8180:8080 KC_DEBUG_PORT=9000:9000 # --- KEYCLOAK TOKEN VALIDATION --- # Public Issuer URI (must match the token issuer from browser/postman) KC_ISSUER_URI=http://localhost:8180/realms/meldestelle # Internal JWK Set URI (for service-to-service communication within Docker) KC_JWK_SET_URI=http://keycloak:8080/realms/meldestelle/protocol/openid-connect/certs # --- CONSUL --- CONSUL_IMAGE=hashicorp/consul:1.22.1 CONSUL_PORT=8500:8500 CONSUL_UDP_PORT=8600:8600/udp CONSUL_HOST=consul # --- Zipkin --- ZIPKIN_IMAGE=openzipkin/zipkin:3 ZIPKIN_HEAP=256m ZIPKIN_PORT=9411:9411 # --- Mailpit --- MAILPIT_IMAGE=axllent/mailpit:v1.29 MAILPIT_WEB_PORT=8025:8025 MAILPIT_SMTP_PORT=1025:1025 # --- PGADMIN --- PGADMIN_IMAGE=dpage/pgadmin4:8 PGADMIN_EMAIL=meldestelle@mo-code.at PGADMIN_PASSWORD=pgadmin PGADMIN_PORT=8888:80 # --- POSTGRES-EXPORTER --- POSTGRES_EXPORTER_IMAGE=prometheuscommunity/postgres-exporter:v0.18.0 # --- ALERTMANAGER --- ALERTMANAGER_IMAGE=prom/alertmanager:v0.29.0 ALERTMANAGER_PORT=9093:9093 # --- PROMETHEUS --- PROMETHEUS_IMAGE=prom/prometheus:v3.7.3 PROMETHEUS_PORT=9090:9090 # --- GRAFANA --- GF_IMAGE=grafana/grafana:12.3 GF_ADMIN_USER=gf-admin GF_ADMIN_PASSWORD=gf-password GF_PORT=3000:3000 # --- API-GATEWAY --- GATEWAY_PORT=8081:8081 GATEWAY_DEBUG_PORT=5005:5005 GATEWAY_SERVER_PORT=8081 GATEWAY_SPRING_PROFILES_ACTIVE=docker GATEWAY_DEBUG=true GATEWAY_SERVICE_NAME=api-gateway GATEWAY_CONSUL_HOSTNAME=api-gateway GATEWAY_CONSUL_PREFER_IP=true # --- PING-SERVICE --- PING_SPRING_PROFILES_ACTIVE=docker PING_PORT=8082:8082 PING_DEBUG_PORT=5006:5006 PING_SERVER_PORT=8082 PING_DEBUG=true PING_SERVICE_NAME=ping-service PING_CONSUL_HOSTNAME=ping-service PING_CONSUL_PREFER_IP=true # --- WEB-APP --- CADDY_VERSION=2.11-alpine WEB_APP_PORT=4000:4000 WEB_BUILD_PROFILE=dev # --- DESKTOP-APP --- DESKTOP_APP_VNC_PORT=5901:5901 DESKTOP_APP_NOVNC_PORT=6080:6080