This project is not maintained anymore and is abandoned. Feel free to fork and make your own changes, or you can switch to the official image.
Docker image for Healthchecks, a cron monitoring tool.
Tip
Want to be notified of new releases? Check out 🔔 Diun (Docker Image Update Notifier) project!
- Run as non-root user
- Multi-platform image
- Traefik as reverse proxy and creation/renewal of Let's Encrypt certificates (see this template)
git clone https://github.com/crazy-max/docker-healthchecks.git
cd docker-healthchecks
# Build image and output to docker (default)
docker buildx bake
# Build multi-platform image
docker buildx bake image-all
Registry | Image |
---|---|
Docker Hub | crazymax/healthchecks |
GitHub Container Registry | ghcr.io/crazy-max/healthchecks |
Following platforms for this image are available:
$ docker buildx imagetools inspect crazymax/healthchecks --format "{{json .Manifest}}" | \
jq -r '.manifests[] | select(.platform.os != null and .platform.os != "unknown") | .platform | "\(.os)/\(.architecture)\(if .variant then "/" + .variant else "" end)"'
linux/amd64
linux/arm/v7
linux/arm64
TZ
: The timezone assigned to the container (defaultUTC
)PUID
: Process UID (default1000
)PGID
: Process GID (default1000
)SUPERUSER_EMAIL
: Superuser email to access admin panelSUPERUSER_PASSWORD
: Superuser passwordUSE_OFFICIAL_LOGO
: Replace generic logo with official branding (defaultfalse
)
To configure the application, you just add the environment variables as shown in the Configuration page of Healthchecks Project.
💡
SUPERUSER_PASSWORD_FILE
can be used to fill in the value from a file, especially for Docker's secrets feature.
/data
: Contains SQLite database and static images folder
⚠️ Note that the volumes should be owned by the user/group with the specifiedPUID
andPGID
. If you don't give the volume correct permissions, the container may not start.
2500
: Healthchecks SMTP listener service8000
: HTTP port
Docker compose is the recommended way to run this image. You can use the following docker compose template, then run the container:
docker compose up -d
docker compose logs -f
You can also use the following minimal command:
$ docker run -d -p 8000:8000 --name healthchecks \
-e "TZ=Europe/Paris" \
-e "SECRET_KEY=5up3rS3kr1t" \
-e "DB=sqlite" \
-e "DB_NAME=/data/hc.sqlite" \
-e "ALLOWED_HOSTS=*" \
-v $(pwd)/data:/data \
crazymax/healthchecks:latest
Recreate the container whenever I push an update:
docker compose pull
docker compose up -d
Want to contribute? Awesome! The most basic way to show your support is to star the project, or to raise issues. You can also support this project by becoming a sponsor on GitHub or by making a PayPal donation to ensure this journey continues indefinitely!
Thanks again for your support, it is much appreciated! 🙏
MIT. See LICENSE
for more details.