Deploy Healthchecks

Cron job and scheduled task monitoring, self-hosted (unofficial)

Deploy Healthchecks

healthchecks/healthchecks:v4.4

healthchecks/healthchecks:v4.4

Just deployed

/data

Deploy and Host Healthchecks on Railway

Healthchecks is an open-source monitor for cron jobs and scheduled tasks. Your jobs ping a URL; if a ping is missing, you get alerted (email, Slack, Telegram, webhooks and more). This template deploys the official healthchecks/healthchecks image (pinned to v4.4) with SQLite on a persistent volume. One service, no separate database or worker. Unofficial template, not affiliated with the Healthchecks project.

About Hosting Healthchecks

The template runs a single service from the official image with a volume mounted at /data holding the SQLite database. The alert sender and report daemons run inside the same container. On first start an admin account is created from the ADMIN_EMAIL you enter at deploy and the auto-generated ADMIN_PASSWORD (find it in the service Variables tab); sign in with those. Public sign-up is closed by default (REGISTRATION_OPEN=False). Email alerts and login links need SMTP: set EMAIL_HOST, EMAIL_PORT, EMAIL_HOST_USER, EMAIL_HOST_PASSWORD and DEFAULT_FROM_EMAIL in the service Variables tab and redeploy. Run a single instance only.

Common Use Cases

  • Get alerted when a nightly backup or cron job stops running
  • Monitor scheduled tasks and background workers with a simple curl ping
  • Track job duration and failures with a status page-style dashboard

Dependencies for Healthchecks Hosting

  • healthchecks/healthchecks Docker image (v4.4)
  • Persistent volume at /data
  • Optional: an SMTP server for email alerts and login links

Security notes

  • Sign-up is closed and an admin password is generated for you, so strangers cannot create accounts on your public URL. The generated admin password appears in the service deploy logs on first start (the admin-creation hook logs its command line), so change it in the app after first login and keep ADMIN_PASSWORD private.
  • HTTPS: Railway terminates TLS at its edge for generated *.up.railway.app domains and custom domains (certificates are provisioned automatically), and redirects plain HTTP GET requests to HTTPS. This is Railway's platform behaviour, not a Healthchecks feature; this template makes no claim about encryption inside Railway's network or about the security of the app itself.
  • The template sets SITE_ROOT to https:// so ping URLs and emails use https, and tells the app to trust Railway's X-Forwarded-Proto header.

FAQ / Troubleshooting

  • How do I sign in? Use the ADMIN_EMAIL you entered and the ADMIN_PASSWORD variable from the service's Variables tab. If the account was not created (for example the email was invalid), check the deploy logs.
  • I never got a login or alert email. SMTP is not configured or wrong. Set EMAIL_HOST, EMAIL_PORT (587 or 465; many hosts block port 25), EMAIL_HOST_USER, EMAIL_HOST_PASSWORD and DEFAULT_FROM_EMAIL, then redeploy.
  • "Bad Request (400)" or the page will not load. ALLOWED_HOSTS does not include the hostname you are using. It is set to your Railway domain plus Railway's healthcheck host; if you add a custom domain, append it (comma-separated) and update SITE_ROOT.
  • Ping URLs show the wrong domain. Set SITE_ROOT to https://your-domain (custom domain included).
  • Do I need a second service for alerts? No, the image runs the alert sender and report daemons in the same container.
  • False "down" alerts around a redeploy. Single instance: pings sent during a redeploy fail. Give important checks a grace time of a few minutes and avoid redeploying when a job runs.
  • Database is read-only / permission denied on /data. RAILWAY_RUN_UID=0 is already pre-set on the service so the app can write to the Railway volume (volumes may be root-owned); do not remove it.
  • Where do my jobs ping? curl -fsS https://your-domain/ping/ (the URL is shown on each check).
  • Can I allow sign-ups later? Set REGISTRATION_OPEN=True and redeploy.

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.


Template Content

healthchecks/healthchecks:v4.4

healthchecks/healthchecks:v4.4

More templates in this category

View Template
Rootprint
Open-source logs and traces with full-text search on object-storage.

Rootprint
1
View Template
Pyroscope profiling
Protected continuous profiling with durable Pyroscope storage.

Anton Orel
1
View Template
SigOnly
Deploy SigNoz with a working demo app & config in one click

zoeyjones
22