67 lines
1.8 KiB
YAML
67 lines
1.8 KiB
YAML
# 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}"
|