Home Catalog Pi-hole
dns_blocker

Pi-hole

A network-wide ad and tracker blocker that functions as a DNS sinkhole, protecting all local network devices without requiring client-side software.

ARM64 & AMD64
Docker & Rootless Podman
100% Self-Hosted (Zero Lock-in)
RAM Profile: Medium
Default Port: Port 53

Why this Configuration?

Quick Start (Standalone Docker Compose)

The snippet below is immediately ready to run in any standard Docker or Podman environment:

services:
  pi-hole:
    container_name: njorddeploy-component_id
    image: pihole/pihole:latest
    restart: unless-stopped
    ports:
      - "53:53/tcp"
      - "53:53/udp"
      - "8088:80/tcp"
    environment:
      TZ: 'Etc/UTC'
      FTLCONF_webserver_api_password: "pi"
      FTLCONF_dns_listeningMode: "all"
      VIRTUAL_HOST: "pi-hole.pi-hole.home.lan"
    volumes:
      - "pihole_etc:/etc/pihole"
      - "pihole_dnsmasq:/etc/dnsmasq.d"
    cap_add:
      - NET_ADMIN
    networks:
      - njorddeploy_net
volumes:
  pihole_etc:
    name: "njorddeploy-pihole-etc"
  pihole_dnsmasq:
    name: "njorddeploy-pihole-dnsmasq"

networks:
  njorddeploy_net:

Start the service directly via the command line: docker compose up -d

Configuration & Environment Variables

Key configuration parameters and defaults derived from the NjordDeploy component template:

Variable Default Value Description
PIHOLE_WEB_PASSWORD pi A strong password for the web UI. Required for a clean installation.
PIHOLE_WEB_PORT 8088 The external HTTP port to access the Pi-hole web UI.
PIHOLE_DNS_PORT 53 The external port for DNS queries. Must be 53 for most use cases.

Ecosystem & Enterprise Integration

Effortless Management with NjordDeploy

Deploy, monitor, and update this service with a single click on your own hardware via the NjordDeploy Configurator.