# Postgres POSTGRES_DB=fleet POSTGRES_USER=fleet POSTGRES_PASSWORD=change-me # App connection (via pgbouncer in prod, direct in dev is also fine) DATABASE_URL=postgresql://fleet:change-me@pgbouncer:6432/fleet # Auth JWT_SECRET=replace-with-64-bytes-of-random JWT_ACCESS_TTL_MIN=15 JWT_REFRESH_TTL_DAYS=30 # Tracksolid push (shared token Tracksolid POSTs in form body) TRACKSOLID_PUSH_TOKEN=set-from-tracksolid-console # Tracksolid polled API TRACKSOLID_API_BASE_URL=https://eu-open.tracksolidpro.com/route/rest TRACKSOLID_APP_KEY= TRACKSOLID_APP_SECRET= TRACKSOLID_USER_ID= TRACKSOLID_PWD_MD5= TRACKSOLID_TARGET_ACCOUNT= TRACKSOLID_TOKEN_TTL_SEC=7200 TRACKSOLID_POLL_INTERVAL_SEC=60 TRACKSOLID_STALE_POLL_INTERVAL_SEC=600 TRACKSOLID_STALE_AFTER_SEC=1800 # Geocoding (P2) NOMINATIM_BASE_URL= MAPBOX_TOKEN= # Alerting (D9) NTFY_BASE_URL=https://ntfy.rahamafresh.com NTFY_TOPIC=fleet-slo-breach NTFY_TOKEN= # Runtime APP_MODE=dev # dev|prod — dev enables uvicorn --reload APP_ROLE=gateway # gateway|worker|cron — selected per container APP_LOG_LEVEL=INFO # Build-time (injected by CI) APP_GIT_SHA=local