# Meldestelle Server Configuration ktor: deployment: # Server port configuration - can be overridden with SERVER_PORT environment variable port: 8080 # Connection timeout in seconds connectionTimeout: 30 # Maximum number of concurrent connections maxConnections: 1000 # Enable development mode with hot-reload (only for development) watch: - classes - resources application: modules: - at.mocode.ApplicationKt.module # Database Configuration database: # Database driver (postgresql for production, h2 for development) driver: "${DB_DRIVER:postgresql}" # Database connection settings host: "${DB_HOST:localhost}" port: "${DB_PORT:5432}" name: "${DB_NAME:meldestelle}" user: "${DB_USER:postgres}" password: "${DB_PASSWORD:postgres}" # Connection pool settings pool: maxSize: "${DB_POOL_SIZE:10}" minIdle: "${DB_POOL_MIN_IDLE:2}" idleTimeout: 10000 connectionTimeout: 5000 maxLifetime: 1800000 # Security Configuration security: # JWT configuration jwt: issuer: "meldestelle-server" audience: "meldestelle-clients" realm: "meldestelle" # Secret should be set via an environment variable in production secret: "${JWT_SECRET:dev-secret-key-change-in-production}" # Token validity duration in milliseconds (24 hours) validity: 86400000 # CORS Configuration cors: # Allow requests from these origins allowedHosts: - "localhost:3000" - "127.0.0.1:3000" - "meldestelle.mocode.at" # Allow credentials (cookies, auth headers) allowCredentials: true # Application-specific settings application: name: "Meldestelle Server" version: "1.0.0" environment: "${ENVIRONMENT:development}" # Feature flags features: enableRegistration: true enableEmailNotifications: "${ENABLE_EMAIL:false}"