Files
Docker-Compose/Security_Containers/pihole/compose.yaml
T

63 lines
1.8 KiB
YAML

services:
pihole:
container_name: pihole
image: pihole/pihole:latest
hostname: pihole
domainname: ${DOMAIN_NAME}
#mac_address: de:ad:be:ef:ff:01 # can change or leave this
cap_add: # only needed if doing DHCP
- NET_ADMIN
restart: unless-stopped
secrets:
- piholepass
networks:
pihole_network:
ipv4_address: ${PIHOLE_IP}
dns:
- 127.0.0.1 # use local DNS
ports:
- "53:53/tcp" #DNS
- "53:53/udp" #DNS
- "67:67/udp" #DHCP
- "80:80/tcp" #HTTP
- "443:443/tcp" #HTTPS
volumes:
- "/srv/docker/pihole/pihole:/etc/pihole"
- "/srv/docker/pihole/dnsmasq.d:/etc/dnsmasq.d"
environment:
ServerIP: ${PIHOLE_IP}
FTLCONF_LOCAL_IPV4: ${PIHOLE_IP}
PIHOLE_DNS_: ${PIHOLE_IP}
DNSSEC: "false"
VIRTUAL_HOST: ${SERVICE_NAME}.${DOMAIN_NAME}
#WEBPASSWORD: "randompassword"
WEBPASSWORD_FILE: "/run/secrets/piholepass"
TZ: "America/Chicago"
labels:
### Auto create icon on Flame dashboard
- flame.type=application
- flame.name=${SERVICE_NAME}
- flame.url=https://${PIHOLE_IP}/admin
- flame.icon=https://cdn.jsdelivr.net/gh/homarr-labs/dashboard-icons/svg/pi-hole.svg
### Monitor with uptime-kuma
- kuma.monitoring.group.name=Docker Containers
- kuma.${SERVICE_NAME}.docker.parent_name=monitoring
- kuma.${SERVICE_NAME}.docker.name=${SERVICE_NAME}
- kuma.${SERVICE_NAME}.docker.type=docker
- kuma.${SERVICE_NAME}.docker.docker_container=${SERVICE_NAME}
- kuma.${SERVICE_NAME}.docker.docker_host=1
- 'kuma.${SERVICE_NAME}.docker.tag_names=[{"name": "docker_tag"}]'
secrets:
piholepass:
file: "/srv/docker/pihole/piholepass.txt"
networks:
pihole_network: # externally created network
external: true