services:

  pihole:
    container_name: pihole
    image: pihole/pihole:latest
    restart: unless-stopped    
    # For DHCP it is recommended to remove these ports and instead add: network_mode: "host"
    ports:
      - "53:53/tcp" # DNS TCP
      - "53:53/udp" # DNS UDP
      - "80:80/tcp" # WEB ADMIN GUI
      #- "67:67/udp" # Only required if you are using Pi-hole as your DHCP server
    environment:
      TZ: 'Europe/Berlin'
      WEBPASSWORD: 'MySecureLoginPasswordForWebApp'
    volumes:
      - ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/pihole/data:/etc/pihole
      - ${DOCKER_VOLUME_STORAGE:-/mnt/docker-volumes}/pihole/dnsmasq:/etc/dnsmasq.d
    #cap_add:
    #  - NET_ADMIN # Required if you are using Pi-hole as your DHCP server, else not needed
    #networks:
    #  - proxy
    #labels:
    #  - traefik.enable=true
    #  - traefik.docker.network=proxy
    #  - traefik.http.routers.pihole.rule=Host(`pihole.example.com`)
    #  - traefik.http.services.pihole.loadbalancer.server.port=80
    #  # Optional part for traefik middlewares
    #  - traefik.http.routers.pihole.middlewares=local-ipwhitelist@file

#networks:
#  proxy:
#    external: true