Docker image is built in multi-arch mode. Following hosts are supported:
amd64arm64(akaaarch64)armv7(akaarmhf)
SSHD_ENABLE- defaultfalse. Enabled SSH daemonSSH_PORT- default2223. If container is running in host mode port 22 may already be bound.SSH_KEY- public key from remote gravity sync instanceSSH_KEY_TYPES- defaultssh-ed25519,rsa-sha2-512,rsa-sha2-256,ssh-rsa
Gravity Sync requires SSHD to be configured and on.
GS_ENABLE- defaultfalse. Enable Gravity SyncGS_MODE- defaultsmartGS_SYNC_PERIOD- default*/5 * * * *GS_ETC_PATH- default/etc/gravity-syncGS_CONFIG_FILE- defaultgravity-sync.confGS_SSH_PORT- default22GS_REMOTE_HOST- remove Gravity Sync instance. Must be set
TAILSCALE_ENABLE- defaultfalse. Enable tailscale daemonTAILSCALE_ARGS- extra arguments to thetailscaleTAILSCALE_ACCEPT_DNS- defaultfalseTAILSCALE_AUTHKEY- optional. You may pass API key obtained from tailscale account. Otherwise, it falls to default auth mechanism.TAILSCALED_ARGS- extra arguments to thetailscaled. For exampleTAILSCALED_ARGS=--tun=tailscaled1
Plain pihole
docker run --name pihole \
ghcr.io/troian/pihole:latestPihole with gravity sync in smart mode (default)
docker run --name pihole \
-e SSHD_ENABLE=true \
-e SSH_PORT=2223 \
-e SSH_KEY=<your-pub-key> \
-e GS_ENABLE=true \
-e GS_REMOTE_HOST=<ip address> \
ghcr.io/troian/pihole:latestPihole with Tailscale
docker run --name pihole \
-e TAILSCALE_ENABLE=true \
ghcr.io/troian/pihole:latest