-
Notifications
You must be signed in to change notification settings - Fork 1
Getting Started
- Docker and Docker Compose
- A MariaDB (or MySQL 8.0+) instance — included in the example Compose file
-
NET_RAWLinux capability on the container (required for ICMP ping checks) - A reverse proxy (Caddy, nginx, Traefik) for HTTPS — strongly recommended for production
git clone https://github.com/X4Applegate/status-server.git
cd status-servercp docker-compose.example.yml docker-compose.ymlEdit docker-compose.yml and fill in the required values:
environment:
- DB_HOST=mariadb
- DB_USER=statusadmin
- DB_PASSWORD=your_secure_password # change this
- DB_NAME=status_monitor
- SESSION_SECRET=a_long_random_string # change this — app refuses to start if left as default
- EXTERNAL_URL=https://status.example.com
- TZ=America/Los_AngelesThe app will refuse to start in production if
SESSION_SECRETis still the default value orDB_PASSWORDis unset.
docker compose up -dThe app will be available at http://localhost:3000 (or your configured port). On first run, all database tables are created automatically.
On your first visit to the app, you will be presented with a setup wizard to create the initial admin account. Fill in a username and password — this account has full admin access.
After setup, log in at /login to access the admin panel.
Caddy is the recommended reverse proxy for automatic HTTPS:
status.example.com {
reverse_proxy status-server:3000
}For custom per-dashboard domains (see Multi-Tenant / Groups), add additional blocks:
status.acmecorp.com {
reverse_proxy status-server:3000
}The app detects the Host header and serves the correct branded dashboard automatically.
The app exposes /healthz for Docker health checks and orchestration platforms:
GET /healthz
→ 200 OK {"status":"ok"}
This is already wired up in the example Compose file.
- Configuration — set up SMTP email, Google OAuth, Cloudflare Turnstile
- Health Checks — add and configure your first server
- Multi-Tenant / Groups — create a branded dashboard for a team or client