# HexaWetter basic settings WEB_PORT=8080 API_PORT=8081 DOMAIN=wetter.example.com TZ=Europe/Berlin # Database POSTGRES_PASSWORD=hexawetter DATABASE_URL=postgresql://hexawetter:hexawetter@postgres:5432/hexawetter REDIS_URL=redis://redis:6379/0 # API sources (replace with selfhosted instances when available) OPEN_METEO_BASE_URL=https://api.open-meteo.com/v1 BRIGHTSKY_BASE_URL=https://api.brightsky.dev DWD_RADAR_BASE_URL=https://opendata.dwd.de/weather/radar/composite DWD_WMS_URL=https://maps.dwd.de/geoserver/dwd/wms DWD_WARNINGS_URL=https://www.dwd.de/DWD/warnungen/warnapp_landkreise/json/warnings.json NOMINATIM_BASE_URL=https://nominatim.openstreetmap.org NOMINATIM_USER_AGENT=HexaWetter/1.0 (selfhosted weather) # Default location: Hauzenberg, DE DEFAULT_LAT=48.6546 DEFAULT_LON=13.6252 DEFAULT_PLACE=Hauzenberg # Radar settings RADAR_PRODUCT=rv RADAR_SYNC_LIMIT=12 RADAR_SYNC_INTERVAL_SECONDS=300 RADAR_RENDER_INTERVAL_SECONDS=300 RADAR_RETENTION_HOURS=48 # Cache TTL (seconds) CACHE_TTL_FORECAST=600 CACHE_TTL_OBSERVATIONS=300 CACHE_TTL_WARNINGS=120 CACHE_TTL_GEOCODE=86400 CACHE_TTL_WMS_TIMES=120 # Admin (generate with: python scripts/hash_admin_password.py 'your-secure-password') # bcrypt-Hashes enthalten $ — im .env fuer docker compose jedes $ als $$ schreiben! ADMIN_USERNAME=admin ADMIN_PASSWORD_HASH= ADMIN_JWT_SECRET= ADMIN_JWT_EXPIRE_HOURS=8 ADMIN_LOGIN_MAX_ATTEMPTS=5 ADMIN_LOGIN_WINDOW_SECONDS=300 # Optional selfhosted profile OPEN_METEO_PORT=8082 BRIGHTSKY_PORT=8083 BRIGHTSKY_DB_PASSWORD=brightsky # Optional Traefik TRAEFIK_CERTRESOLVER=letsencrypt