Where Does Self-Hosted Healthchecks Store Data?
Self hosted Healthchecks config is docker .env plus Postgres volume. SECRET_KEY and DB dumps form the backup pair.
Last updated
The compose setup keeps config in a docker .env file with hosts, mail, secret key, and uWSGI tuning. Application state lives in Postgres, with migrations running automatically at container start. Static files serve from the image itself.
Two operational notes stand out in the docs. Upgrading Postgres versions needs a data directory migration via a helper container. The SMTP listener only runs when its port variable is set, so email pings need that plus compose port exposure. Ping handling and alerting read the same env.
Where Healthchecks stores this, by platform
/opt/healthchecks/docker/.env
Hosts, mail, secret key, and uWSGI options. Copy from .env.example and set a random SECRET_KEY first.
/var/lib/docker/volumes/healthchecks_pgdata/_data
Postgres data for checks, integrations, and history. Migrate with the helper container when bumping major versions.
Frequently asked questions
How do I back up Healthchecks?
Dump Postgres and store docker .env beside it. SECRET_KEY secures sessions, so losing it logs everyone out and breaks integrations.
How do I create the first admin?
Create the superuser with the manage.py command in the running web container. Both interactive and flag driven forms work.
Notice an outdated path? Let us know.