---
title: "Deploy Healthchecks"
description: "Healthchecks 4.4 cron job monitoring with ping URLs and alerts."
category: "Observability"
url: https://railway.com/deploy/healthchecks-1
---

# Deploy Healthchecks

Healthchecks 4.4 cron job monitoring with ping URLs and alerts.

**[Deploy Healthchecks on Railway](https://railway.com/template/healthchecks-1)**

Machine-readable deploy manifest (JSON, validated by TemplateCI): https://railway.com/deploy/healthchecks-1/manifest.json

- **Creator:** Agaz Self-Host
- **Category:** Observability

## Template content

### Postgres https://devicons.railway.app/i/postgresql.svg

- **Image:** ghcr.io/railwayapp-templates/postgres-ssl:18

### healthchecks https://github.com/healthchecks.png

- **Image:** healthchecks/healthchecks:v4.4
- **Start command:** `sh -c './manage.py migrate --noinput && (./manage.py createsuperuser --email "$HC_ADMIN_EMAIL" --password "$HC_ADMIN_PASSWORD" 2>&1 | grep -vE "already taken|MAILERS" || true) && exec uwsgi /opt/healthchecks/docker/uwsgi.ini'`
- **Health check:** /api/v3/status/
- **Public domain:** Yes

## Documentation

# Deploy and Host Healthchecks on Railway

Healthchecks is a cron job and background task monitor. Each job gets a unique ping URL; when a ping arrives late or reports a failure, Healthchecks alerts you by email, Slack, Discord, Telegram, webhooks and many other integrations. It is the open-source code behind the healthchecks.io service.

## About Hosting Healthchecks

This template deploys Healthchecks v4.4 from the official image with a Railway Postgres database. The start command runs database migrations and creates the admin account from environment variables, so the first login works immediately; public sign-up is closed. Ping URLs use your Railway domain. The service listens on IPv4 and IPv6, so jobs on the same project can ping over the private network. Email alerts need an SMTP server: set `EMAIL_HOST` and related variables. The app is light and fits on the Hobby plan. Back up Postgres regularly to keep the check history.

## Common Use Cases

- Alerting when cron jobs, backups or scheduled tasks stop running
- Monitoring background workers and queues with start and fail signals
- A self-hosted dead man's switch for home-lab and production jobs

## Dependencies for Healthchecks Hosting

- `healthchecks/healthchecks:v4.4` (official image)
- Railway Postgres (`ghcr.io/railwayapp-templates/postgres-ssl:18`) with a volume

### Deployment Dependencies

- [Healthchecks documentation](https://healthchecks.io/docs/)
- [Self-hosted configuration](https://github.com/healthchecks/healthchecks/blob/v4.4/docker/README.md)
- [Healthchecks v4.4 release](https://github.com/healthchecks/healthchecks/releases/tag/v4.4)
- [Railway private networking](https://docs.railway.com/reference/private-networking)

### Implementation Details

| Service | Image | Networking | Storage |
| --- | --- | --- | --- |
| healthchecks | `healthchecks/healthchecks:v4.4` | public domain on 8000; private IPv4/IPv6 | none (state in Postgres) |
| Postgres | Railway Postgres 18 | private only | volume |

Ping a check from a job:

```bash
./backup.sh &amp;&amp; curl -fsS -m 10 --retry 5 https:///ping/
```

| Variable | Default | Purpose |
| --- | --- | --- |
| `HC_ADMIN_EMAIL` / `HC_ADMIN_PASSWORD` | `admin@example.com` / generated | Admin login, created on first start |
| `REGISTRATION_OPEN` | `False` | Keep public sign-up closed |
| `ALLOWED_HOSTS` | public, private and health-check hosts | Django host allow list |

Notes:

- `healthcheck.railway.app` must stay in `ALLOWED_HOSTS`, because Railway's health check uses it as the Host header.
- Changing `HC_ADMIN_PASSWORD` later does not change an existing account; use the web UI.

This is a community-maintained deployment package and does not imply affiliation with or endorsement by the Healthchecks project or its maintainers.

## Why Deploy Healthchecks on Railway?

Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying Healthchecks on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.


## Similar templates

- [Rootprint](https://railway.com/deploy/rootprint-1) — Open-source logs and traces with full-text search on object-storage.
- [Pyroscope profiling](https://railway.com/deploy/pyroscope-profiling) — Protected continuous profiling with durable Pyroscope storage.
- [SigOnly](https://railway.com/deploy/sigonly) — Deploy SigNoz with a working demo app & config in one click

Open this page in a browser: https://railway.com/deploy/healthchecks-1
