Get Started →

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"
  }'