# ©AngelaMos | 2026 # .env.example # Application ENV=development DEBUG=true HOST=0.0.0.0 PORT=8000 LOG_LEVEL=INFO API_KEY=changeme-generate-a-real-key # Docker Host Ports (change these if you have conflicts) POSTGRES_HOST_PORT=16969 REDIS_HOST_PORT=26969 BACKEND_HOST_PORT=36969 FRONTEND_HOST_PORT=46969 # PostgreSQL POSTGRES_DB=angelusvigil POSTGRES_USER=vigil POSTGRES_PASSWORD=change-this-password DATABASE_URL=postgresql+asyncpg://vigil:change-this-password@postgres:5432/angelusvigil # Redis REDIS_URL=redis://redis:6379 # GeoIP (MaxMind - register at https://www.maxmind.com/en/geolite2/signup) GEOIP_ACCOUNT_ID= GEOIP_LICENSE_KEY= GEOIP_DB_PATH=/usr/share/GeoIP/GeoLite2-City.mmdb # Nginx Log Path (inside container) NGINX_LOG_PATH=/var/log/nginx/access.log # ML Auto-Training # Models auto-train with synthetic data on first startup (~1-2 min) # Set to "true" to disable auto-training and start in rules-only mode SKIP_AUTO_TRAIN=false # ML Model Directory (inside container) MODEL_DIR=/app/data/models # Pipeline Tuning RAW_QUEUE_SIZE=1000 PARSED_QUEUE_SIZE=500 FEATURE_QUEUE_SIZE=200 ALERT_QUEUE_SIZE=100 BATCH_SIZE=32 BATCH_TIMEOUT_MS=50 # Dev-Log Target App # Start with: just devlog-up # Simulate traffic: just devlog-simulate mixed 100 # The dev-log nginx writes to a shared Docker volume (vigil_dev_nginx_logs) # that the vigil backend automatically reads from # # To use your own nginx logs instead, edit dev.compose.yml backend volumes: # - /path/to/your/nginx/logs:/var/log/nginx:ro