- FastAPI async gateway with httpx proxying to multiple upstreams - SQLite database with SQLAlchemy ORM - Admin console: manage services, users, API keys, endpoint access - Per-key, per-endpoint granular access control - OpenAPI document sync and caching (5-minute TTL) - Request/response logging with full transaction inspection - In-memory rate limiting (per-key, fixed-window) - Tiered log retention (7d payloads, 90d rows, incremental vacuum) - TLS verification toggle per service (for self-signed certificates) - Service connectivity validation with automatic endpoint refresh - Request browser with filters and deep-link inspection - Docker setup with persistent volume - Modal forms for create/edit flows Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
20 lines
503 B
YAML
20 lines
503 B
YAML
services:
|
|
gateway:
|
|
build: .
|
|
ports:
|
|
- "8000:8000"
|
|
environment:
|
|
# Set a strong random value in production — signs the admin session cookies.
|
|
GATEWAY_SECRET_KEY: change-me-in-production
|
|
GATEWAY_ADMIN_USER: admin
|
|
GATEWAY_ADMIN_PASSWORD: admin
|
|
# Retention (days; 0 = keep forever)
|
|
GATEWAY_PAYLOAD_RETENTION_DAYS: "7"
|
|
GATEWAY_LOG_RETENTION_DAYS: "90"
|
|
volumes:
|
|
- gateway-data:/data
|
|
restart: unless-stopped
|
|
|
|
volumes:
|
|
gateway-data:
|