# Environment Strategy ## Environments | Environment | Purpose | Configuration Source | |-------------|---------|---------------------| | Development | Local development via docker-compose | appsettings.Development.json + docker-compose env | | Production | Deployed container | Environment variables | ## Configuration Hierarchy 1. `appsettings.json` — base defaults 2. `appsettings.{Environment}.json` — environment overrides 3. Environment variables — final override (production secrets) ## Key Differences | Concern | Development | Production | |---------|-------------|------------| | Database host | localhost / postgres (container) | Environment variable | | Google Maps key | appsettings.Development.json | `MapConfig__ApiKey` env var | | Logging | Console + File | File only | | Swagger UI | Enabled | Enabled (no auth gate currently) | | Ports | 18980 (mapped from 8080) | 8080 | ## Observability - **Logging**: Serilog writing to `./logs/` directory (file sink) - **Log format**: Structured (Serilog default) - **Metrics**: None currently implemented - **Health checks**: PostgreSQL readiness via `pg_isready` - **Tracing**: None currently implemented