Deployment¶
Docker (Recommended)¶
Single container with:
- FastAPI backend
- React frontend (served as static files)
- SQLite persistence (volume ./data)
Render¶
- Connect your GitHub repo to Render
- Select "Web Service"
- Render auto-detects the
Dockerfile - Set environment variables:
ENTRASCOUT_DB=/app/data/entrascout.dbENTRASCOUT_OUTPUT=/app/data/outputENTRASCOUT_RATE_LIMIT=10- Add a disk mount at
/app/data
Or use the render.yaml blueprint:
Railway¶
Uses railway.json configuration.
Fly.io¶
Vercel (Frontend only)¶
The backend requires long-running tasks (>5 min), which exceeds Vercel's serverless timeout. Deploy the frontend separately only if you have an external backend:
Set NEXT_PUBLIC_API_URL to your backend URL.
Environment Variables¶
| Variable | Default | Description |
|---|---|---|
PORT |
8000 |
Server port |
ENTRASCOUT_DB |
./data/entrascout.db |
SQLite path |
ENTRASCOUT_OUTPUT |
./web_output |
Artifact directory |
ENTRASCOUT_RATE_LIMIT |
10 |
Scans per IP per hour |
ENTRASCOUT_RELOAD |
false |
Dev auto-reload |