Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Installation

Yet Another Status Page can be deployed in several ways. Choose the method that best fits your infrastructure.

Prerequisites

  • Docker and Docker Compose (recommended)
  • OR Node.js 20+ and PostgreSQL 15+

Deployment Options

Option 1: Vercel (One-Click)

Deploy instantly to Vercel with a managed PostgreSQL database:

Deploy with Vercel

This will:

  1. Create a new Vercel project
  2. Provision a Vercel Postgres database
  3. Prompt you to set PAYLOAD_SECRET (generate a random 32+ character string)

All configuration (site name, logos, services, notifications) is done through the admin panel — no code changes required.

The easiest way to self-host. See the Docker Compose guide for detailed instructions.

# Clone the repository
git clone https://github.com/Hostzero-GmbH/yet-another-status-page.git
cd yet-another-status-page

# Copy the example environment file
cp .env.example .env

# Edit the environment variables
nano .env

# Start the services
docker compose up -d

Option 3: Pre-built Docker Image

Pull the latest image from GitHub Container Registry:

docker pull ghcr.io/hostzero-gmbh/status-page:latest

Run with your own PostgreSQL:

docker run -d \
  --name status-page \
  -p 3000:3000 \
  -e DATABASE_URI=postgres://user:pass@host:5432/db \
  -e PAYLOAD_SECRET=your-secret-key \
  -e SERVER_URL=https://status.example.com \
  ghcr.io/hostzero-gmbh/status-page:latest

Option 4: Build from Source

# Clone the repository
git clone https://github.com/Hostzero-GmbH/yet-another-status-page.git
cd yet-another-status-page

# Install dependencies
npm install

# Build the application
npm run build

# Start the production server
npm start

First-Time Setup

  1. Access the Admin Panel

    Navigate to http://your-server:3000/admin

  2. Create Admin User

    On first access, you’ll be prompted to create an admin account.

  3. Configure Settings

    Configure your status page in the admin panel:

    • Configuration → Site Settings: Site name, description, favicon, logos
    • Configuration → Email Settings: SMTP settings for email notifications
    • Configuration → SMS Settings: Twilio settings for SMS notifications
  4. Add Services

    Create service groups and services that represent your infrastructure.

  5. Go Live

    Your status page is now accessible at http://your-server:3000