Files
Fizzlepoof 24c6a29273
Some checks failed
secret-guardrails / artifact-secret-scan (push) Has been cancelled
secret-guardrails / gitleaks (push) Has been cancelled
docs: record full Pi-hole retirement
2026-05-27 21:14:15 +00:00
..
2026-05-27 21:14:15 +00:00

NOMAD Pi-hole / Unbound / staged Keepalived Replica

  • Repo stack path: /home/fizzlepoof/repos/truenas-stacks/pihole/nomad
  • Former live stack path: /opt/pihole-nomad
  • Former node role: NOMAD Pi-hole replica on Servers VLAN
  • Former staged VIP target: 10.5.30.53/24
  • LAN interface: enp5s0
  • NOMAD LAN IP: 10.5.30.7

Status: retired on 2026-05-27 after network-wide DNS cutover to the Technitium trio.

Retired state summary:

  • pihole-nomad, unbound-pihole-nomad, and keepalived-pihole-nomad were retired on 2026-05-27.
  • The old VIP 10.5.30.53 no longer answers.
  • Treat the files here as historical/reference material unless you intentionally revive this design.

Bring-up:

cd /opt/pihole-nomad
cp .env.example .env
bash bin/prepare_nomad.sh --up

Host note:

  • If systemd-resolved is using the local DNS stub on port 53, disable the stub listener on NOMAD before trusting Pi-hole for live DNS:
sudo mkdir -p /etc/systemd/resolved.conf.d
cat <<'EOF' | sudo tee /etc/systemd/resolved.conf.d/99-pihole.conf
[Resolve]
DNSStubListener=no
EOF
sudo systemctl restart systemd-resolved
sudo ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf

Pi-hole on NOMAD is pinned to enp5s0 with FTLCONF_dns_interface=enp5s0 and FTLCONF_dns_listeningMode=SINGLE so it answers cleanly on the LAN IP without fighting Docker bridge noise.

Former live containers:

  • pihole-nomad
  • unbound-pihole-nomad

Former HA container:

  • keepalived-pihole-nomad

Former LAN admin URL:

  • http://10.5.30.7:8954/admin/