Docker Deployment
OnCallAlert runs as a single, lightweight container backed by any PostgreSQL database (12+). Pass your license key to activate your plan features.
docker run -d \
--name oncallalert \
--restart unless-stopped \
-p 8080:8080 \
-e ONCALL_SUBSCRIPTION_KEY="oca_live_your_subscription_key" \
-e DATABASE_URL="postgres://user:password@your-postgres:5432/oncall" \
oncallalert/server:latest
Once launched, visit http://localhost:8080 to create your initial administrator account.
Environment Variables
All server options are configurable via environment variables or .env file.
| Variable | Required | Description |
|---|---|---|
ONCALL_SUBSCRIPTION_KEY |
Yes | Your plan license key (Base, 50 Users, or Unlimited). |
DATABASE_URL |
Yes | PostgreSQL connection URI (e.g. postgres://...). |
PUBLIC_URL |
No | Canonical domain URL (e.g. https://oncall.yourcompany.com). |
LISTEN_ADDR |
No | Server bind address (default :8080). |
Generic Alert Ingestion API
Trigger incidents programmatically from any script or monitoring system using standard JSON webhooks:
curl -X POST https://your-oncall-domain.com/api/v2/generic/incoming \
-H "Authorization: Bearer oca_int_key_..." \
-H "Content-Type: application/json" \
-d '{
"summary": "Production Redis Out of Memory",
"details": "Replica node memory saturation exceeded 95%",
"service_id": "core-infra",
"severity": "P1"
}'