165 lines
5.8 KiB
Plaintext
165 lines
5.8 KiB
Plaintext
# =============================================================================
|
|
# Meldestelle - Staging Environment Configuration
|
|
# =============================================================================
|
|
# Staging-specific environment variables (production-like but for testing)
|
|
# =============================================================================
|
|
|
|
# =============================================================================
|
|
# 1. APPLICATION CONFIGURATION
|
|
# =============================================================================
|
|
APP_NAME=Meldestelle
|
|
APP_VERSION=1.0.0
|
|
APP_DESCRIPTION='Pferdesport Meldestelle System'
|
|
APP_ENVIRONMENT=staging
|
|
APP_HOST=0.0.0.0
|
|
|
|
# Staging settings (production-like but with some debugging)
|
|
DEBUG_MODE=false
|
|
DEV_HOT_RELOAD=false
|
|
|
|
# =============================================================================
|
|
# 2. PORT MANAGEMENT
|
|
# =============================================================================
|
|
# Gateway Ports
|
|
GATEWAY_PORT=8081
|
|
GATEWAY_ADMIN_PORT=8080
|
|
|
|
# Service Ports
|
|
PING_SERVICE_PORT=8082
|
|
MEMBERS_SERVICE_PORT=8083
|
|
HORSES_SERVICE_PORT=8084
|
|
EVENTS_SERVICE_PORT=8085
|
|
MASTERDATA_SERVICE_PORT=8086
|
|
AUTH_SERVICE_PORT=8087
|
|
|
|
# Infrastructure Ports
|
|
CONSUL_PORT=8500
|
|
REDIS_PORT=6379
|
|
KAFKA_PORT=9092
|
|
PROMETHEUS_PORT=9090
|
|
GRAFANA_PORT=3000
|
|
|
|
# =============================================================================
|
|
# 3. DATABASE CONFIGURATION
|
|
# =============================================================================
|
|
DB_HOST=postgres
|
|
DB_PORT=5432
|
|
DB_NAME=meldestelle_staging
|
|
DB_USER=meldestelle_staging
|
|
DB_PASSWORD=staging_password_change_me
|
|
DB_MAX_POOL_SIZE=15
|
|
DB_MIN_POOL_SIZE=5
|
|
DB_AUTO_MIGRATE=true
|
|
|
|
POSTGRES_USER=meldestelle_staging
|
|
POSTGRES_PASSWORD=staging_password_change_me
|
|
POSTGRES_DB=meldestelle_staging
|
|
POSTGRES_EXTERNAL_PORT=5432
|
|
|
|
# =============================================================================
|
|
# 4. REDIS CONFIGURATION
|
|
# =============================================================================
|
|
REDIS_EVENT_STORE_HOST=redis
|
|
REDIS_EVENT_STORE_PORT=6379
|
|
REDIS_EVENT_STORE_PASSWORD=staging_redis_password
|
|
REDIS_EVENT_STORE_DATABASE=0
|
|
REDIS_EVENT_STORE_CONNECTION_TIMEOUT=3000
|
|
REDIS_EVENT_STORE_READ_TIMEOUT=3000
|
|
REDIS_EVENT_STORE_USE_POOLING=true
|
|
REDIS_EVENT_STORE_MAX_POOL_SIZE=15
|
|
REDIS_EVENT_STORE_MIN_POOL_SIZE=3
|
|
|
|
REDIS_CACHE_HOST=redis
|
|
REDIS_CACHE_PORT=6379
|
|
REDIS_CACHE_PASSWORD=staging_redis_password
|
|
REDIS_CACHE_DATABASE=1
|
|
|
|
REDIS_EXTERNAL_PORT=6379
|
|
REDIS_PASSWORD=staging_redis_password
|
|
|
|
# =============================================================================
|
|
# 5. SECURITY CONFIGURATION
|
|
# =============================================================================
|
|
JWT_SECRET=staging-jwt-secret-key-not-for-production-use
|
|
JWT_ISSUER=meldestelle-api-staging
|
|
JWT_AUDIENCE=meldestelle-clients-staging
|
|
JWT_REALM=meldestelle-staging
|
|
API_KEY=staging-api-key-change-me
|
|
|
|
# =============================================================================
|
|
# 6. KEYCLOAK CONFIGURATION
|
|
# =============================================================================
|
|
KEYCLOAK_ADMIN=admin
|
|
KEYCLOAK_ADMIN_PASSWORD=admin
|
|
KC_DB=postgres
|
|
KC_DB_URL=jdbc:postgresql://postgres:5432/meldestelle_staging
|
|
KC_DB_SCHEMA=keycloak
|
|
KC_DB_USERNAME=meldestelle_staging
|
|
KC_DB_PASSWORD=staging_password_change_me
|
|
KC_HOSTNAME=localhost
|
|
|
|
# =============================================================================
|
|
# 7. SERVICE DISCOVERY
|
|
# =============================================================================
|
|
CONSUL_HOST=consul
|
|
CONSUL_ENABLED=true
|
|
SERVICE_DISCOVERY_ENABLED=true
|
|
SERVICE_DISCOVERY_REGISTER_SERVICES=true
|
|
SERVICE_DISCOVERY_HEALTH_CHECK_PATH=/health
|
|
SERVICE_DISCOVERY_HEALTH_CHECK_INTERVAL=15
|
|
|
|
# =============================================================================
|
|
# 8. MESSAGING (Kafka)
|
|
# =============================================================================
|
|
ZOOKEEPER_CLIENT_PORT=2181
|
|
KAFKA_BROKER_ID=1
|
|
KAFKA_ZOOKEEPER_CONNECT=zookeeper:2181
|
|
KAFKA_ADVERTISED_LISTENERS=PLAINTEXT://kafka:29092,PLAINTEXT_HOST://localhost:9092
|
|
KAFKA_LISTENER_SECURITY_PROTOCOL_MAP=PLAINTEXT:PLAINTEXT,PLAINTEXT_HOST:PLAINTEXT
|
|
KAFKA_INTER_BROKER_LISTENER_NAME=PLAINTEXT
|
|
KAFKA_OFFSETS_TOPIC_REPLICATION_FACTOR=1
|
|
|
|
# =============================================================================
|
|
# 9. MONITORING
|
|
# =============================================================================
|
|
GF_SECURITY_ADMIN_USER=staging_admin
|
|
GF_SECURITY_ADMIN_PASSWORD=staging_grafana_password
|
|
GF_USERS_ALLOW_SIGN_UP=false
|
|
|
|
METRICS_AUTH_USERNAME=staging_metrics
|
|
METRICS_AUTH_PASSWORD=staging_metrics_password
|
|
|
|
GRAFANA_HOSTNAME=grafana-staging.meldestelle.local
|
|
PROMETHEUS_HOSTNAME=prometheus-staging.meldestelle.local
|
|
|
|
# =============================================================================
|
|
# 10. LOGGING CONFIGURATION
|
|
# =============================================================================
|
|
LOGGING_LEVEL=INFO
|
|
LOGGING_REQUESTS=true
|
|
LOGGING_RESPONSES=false
|
|
LOGGING_REQUEST_HEADERS=false
|
|
LOGGING_REQUEST_BODY=false
|
|
LOGGING_RESPONSE_HEADERS=false
|
|
LOGGING_RESPONSE_BODY=false
|
|
LOGGING_STRUCTURED=true
|
|
LOGGING_CORRELATION_ID=true
|
|
LOGGING_REQUEST_ID_HEADER=X-Request-ID
|
|
|
|
# =============================================================================
|
|
# 11. CORS AND RATE LIMITING
|
|
# =============================================================================
|
|
SERVER_CORS_ENABLED=true
|
|
SERVER_CORS_ALLOWED_ORIGINS=https://staging.meldestelle.local,https://app-staging.meldestelle.local
|
|
RATELIMIT_ENABLED=true
|
|
RATELIMIT_GLOBAL_LIMIT=500
|
|
RATELIMIT_GLOBAL_PERIOD_MINUTES=1
|
|
RATELIMIT_INCLUDE_HEADERS=true
|
|
|
|
# =============================================================================
|
|
# 12. SPRING PROFILES AND GATEWAY
|
|
# =============================================================================
|
|
SPRING_PROFILES_ACTIVE=staging
|
|
GATEWAY_ADMIN_USER=staging_gateway_admin
|
|
GATEWAY_ADMIN_PASSWORD=staging_gateway_password
|