# ------------------------------------------------------------ # ### Deploy this docker remotely # # WEBPASSWORD="PASTE_PASSWORD_HERE"; CONFIG_DIR="/root/docker-configs/pihole"; DOMAIN=".localdomain"; mkdir -p "${CONFIG_DIR}/etc/dnsmasq.d"; mkdir -p "${CONFIG_DIR}/etc/pihole"; curl -sL "https://raw.githubusercontent.com/mcavallo-git/cloud-infrastructure/main/var/lib/docker-compose/docker-compose.pihole.yml" -o "${CONFIG_DIR}/docker-compose.pihole.yml"; env CONFIG_DIR="${CONFIG_DIR}" DOMAIN="${DOMAIN}" WEBPASSWORD="${WEBPASSWORD}" docker-compose -f "${CONFIG_DIR}/docker-compose.pihole.yml" up -d; watch docker logs pihole; # # ------------------------------------------------------------ version: "3" services: pihole: hostname: pihole container_name: pihole image: docker.io/pihole/pihole:latest restart: always ports: # [Host]:[Docker] Port maps - "53:53/tcp" - "53:53/udp" - "67:67/udp" - "80:80/tcp" - "443:443/tcp" # env_file: # - ${CONFIG_DIR:-.}/.env # volumes: # [Host]:[Docker] Filepath maps # - '${CONFIG_DIR:-.}/etc/pihole/:/etc/pihole/' # - '${CONFIG_DIR:-.}/etc/dnsmasq.d/:/etc/dnsmasq.d/' # - '${CONFIG_DIR:-.}/etc/resolv.conf:/etc/resolv.conf:ro' # - '/etc/hosts:/etc/hosts:ro' # cap_add: # - NET_ADMIN # ### Only add the 'NET_ADMIN' docker capability if [ DHCP ] or [ IPv6 Router Advertisements ] pihole feature(s) are enabled - https://github.com/pi-hole/docker-pi-hole#note-on-capabilities # ------------------------------------------------------------ # # Citation(s) # # docs.pi-hole.net | "Overview of Pi-hole - Pi-hole documentation" | https://docs.pi-hole.net/ # # github.com | "GitHub - pi-hole/docker-pi-hole: Pi-hole in a docker container" | https://github.com/pi-hole/docker-pi-hole/ # # hub.docker.com | "pihole/pihole - Docker Hub" | https://hub.docker.com/r/pihole/pihole # # ------------------------------------------------------------