Skip to content

Latest commit

 

History

History
159 lines (111 loc) · 3.98 KB

File metadata and controls

159 lines (111 loc) · 3.98 KB

Statping-ng

OCI Artifact - Deploy directly from GitHub Container Registry

Open-source status page and monitoring solution for websites and applications with a beautiful interface and comprehensive alerting.

What is an OCI Artifact?

This is a Docker Compose OCI artifact, not a traditional Docker image. It contains a complete docker-compose.yml configuration that you can deploy directly using Docker 25.0+.

Quick Start

Using bc CLI (Recommended)

# 1. Create environment file
cat > .env.statping << 'EOF'
COMPOSE_PROJECT_NAME=statping
SERVICE_DOMAIN=status.example.com
DB_PASS=Swordfish
EOF

# 2. Deploy
bc statping up

# 3. Check status
bc statping ps

Note: Install the bc CLI with: curl -fsSL https://raw.githubusercontent.com/beevelop/beecompose/main/scripts/install.sh | sudo bash

Manual Deployment

# 1. Create environment file
cat > .env.statping << 'EOF'
COMPOSE_PROJECT_NAME=statping
SERVICE_DOMAIN=status.example.com
DB_PASS=Swordfish
EOF

# 2. Deploy from GHCR
docker compose -f oci://ghcr.io/beevelop/statping:latest --env-file .env.statping up -d --pull always

# 3. Check status
docker compose -f oci://ghcr.io/beevelop/statping:latest --env-file .env.statping ps

Prerequisites

  • Docker 25.0+ (required for OCI artifact support)
  • Docker Compose v2.24+
  • Traefik reverse proxy (see traefik)

Dependencies

This service includes all required backing stores:

Dependency Container Purpose
PostgreSQL statping-postgres Status and metrics storage

See Service Dependency Graph for details.

Architecture

Container Image Purpose
statping adamboutcher/statping-ng:v0.90.78 Status page web application
statping-postgres postgres:17-alpine PostgreSQL database

Environment Variables

Required

Variable Description Example
SERVICE_DOMAIN Domain for the status page status.example.com
DB_PASS PostgreSQL password Swordfish

Optional

Variable Description Default
COMPOSE_PROJECT_NAME Docker Compose project name statping
DB_NAME PostgreSQL database name statping
DB_USER PostgreSQL username statping

Volumes

Volume Purpose
statping_postgres_data PostgreSQL database files
statping_app_data Statping application data

Post-Deployment

  1. Access the status page at https://status.example.com
  2. Complete the initial setup wizard
  3. Create your first service to monitor
  4. Configure notification channels (Slack, Email, Discord, etc.)
  5. Customize the public status page theme

Default Setup

On first launch, Statping will guide you through:

  • Creating an admin account
  • Setting up your first monitored service
  • Configuring the public status page

Common Operations

Using bc CLI

bc statping logs -f     # View logs
bc statping restart     # Restart
bc statping down        # Stop
bc statping update      # Pull and recreate

Using docker compose directly

# Define alias for convenience
alias dc="docker compose -f oci://ghcr.io/beevelop/statping:latest --env-file .env.statping"

# View logs
dc logs -f

# Restart
dc restart

# Stop
dc down

# Update
dc pull && dc up -d

Troubleshooting

Database connection errors

Ensure PostgreSQL is healthy before Statping starts. Check with:

dc logs statping-postgres

Container not healthy

Check logs with dc logs statping and ensure all required environment variables are set.

Services showing incorrect status

Verify network connectivity from the container and check timeout settings for each monitored service.

Links