49 lines
1.4 KiB
YAML
49 lines
1.4 KiB
YAML
services:
|
|
pihole:
|
|
container_name: pihole
|
|
image: pihole/pihole:latest
|
|
hostname: pihole
|
|
domainname: gabesville # your local 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: # same as network specified below
|
|
ipv4_address: ${Pihole_IP} # the IP of the pihole container
|
|
|
|
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: # mount our data volumes.
|
|
- "/srv/docker/pihole/pihole:/etc/pihole"
|
|
- "/srv/docker/pihole/dnsmasq.d:/etc/dnsmasq.d"
|
|
|
|
environment: # set variables for pihole configuration.
|
|
ServerIP: ${Pihole_IP} # must match ipv4_address above
|
|
FTLCONF_LOCAL_IPV4: ${Pihole_IP}
|
|
PIHOLE_DNS_: ${Pihole_IP}
|
|
DNSSEC: "false"
|
|
VIRTUAL_HOST: ${SERVICE_NAME}.gabesville # Must be hostname + domainname from above
|
|
#WEBPASSWORD: "randompassword"
|
|
WEBPASSWORD_FILE: "/run/secrets/piholepass"
|
|
TZ: "America/Chicago"
|
|
|
|
secrets:
|
|
piholepass:
|
|
file: "/srv/docker/pihole/piholepass.txt"
|
|
|
|
networks:
|
|
pihole_network: # externally created network
|
|
external: true |