Skip to content

Guide

Install options

Choose the method that fits your host. The published image supports amd64 and arm64. You can use podman compose in place of docker compose.

Download the standalone sample and start the published image.

Terminal window
curl -fsSLO https://raw.githubusercontent.com/nulthara/filterhelm/main/compose.ghcr.yaml
docker compose -f compose.ghcr.yaml up -d
docker compose -f compose.ghcr.yaml exec filterhelm python -m app.auth set-password --username admin

The sample uses ghcr.io/nulthara/filterhelm:latest. Pin a version tag such as 0.2.1 for anything long-lived. If you rename the file to compose.yaml, you can drop -f compose.ghcr.yaml from the commands.

Read more in the Compose sample.

Open http://127.0.0.1:8420/ and sign in as admin with the password you set.

Each release image carries signed build provenance and an SPDX SBOM describing the amd64 image. Replace X.Y.Z with your release tag.

Terminal window
gh attestation verify oci://ghcr.io/nulthara/filterhelm:X.Y.Z --owner nulthara
gh attestation verify oci://ghcr.io/nulthara/filterhelm:X.Y.Z --owner nulthara \
--predicate-type https://spdx.dev/Document/v2.3

Read more about image verification.

FILTERHELM_COOKIE_SECURE=false allows sign-in over plain HTTP. Use it only on loopback. Production session cookies require HTTPS. Behind an HTTPS reverse proxy, set FILTERHELM_COOKIE_SECURE=true and add your public hostname to FILTERHELM_TRUSTED_HOSTS.

Preserve the public Host header at the reverse proxy. Protect the data directory and its backups. On headless hosts, stored Pi-hole passwords are protected by file permissions but are not encrypted.

Read more about deployment.

For updates and recovery, read more about upgrades and backups.