Get started

Deploy Pulse with Docker Compose

Run uptime monitoring on your own infrastructure. The Compose file starts the Pulse application and PostgreSQL with TimescaleDB for monitoring history.

Before you begin, install Docker with Docker Compose and have OpenSSL available to generate secrets.

1. Download the Compose file

Save the Docker Compose file as docker-compose.yml in a new directory. Run the commands below from that directory.

2. Configure secrets and database credentials

Generate two separate secrets:

# PULSE_SECRET_KEY: base64-encoded 32-byte encryption key
openssl rand -base64 32

# PULSE_JWT_SECRET: secret for signing session tokens
openssl rand -hex 32

In docker-compose.yml, replace the PULSE_SECRET_KEY and PULSE_JWT_SECRET placeholders with the respective outputs. Replace the default database password in both POSTGRES_PASSWORD and DATABASE_URL; keep the database name and user consistent.

See the configuration reference for additional settings.

3. Start Pulse

docker compose up -d

Open http://localhost:8080 and follow the initial setup to create your admin account. If Docker runs on a remote server, use that server's address instead of localhost.

4. Add your first monitor

Open Monitors and create a check for your website, API or network service. Pulse supports multi-protocol checks and heartbeat monitoring. For a cron job, backup script or CI task, create a heartbeat and send a success ping after each run.

Configure an email or webhook notification channel and bind it to your monitor or heartbeat to receive alerts.

Heartbeat examples · Full installation documentation

← Back to Pulse