diff --git a/pi-hole/docker-compose.yml b/pi-hole/docker-compose.yml new file mode 100644 index 0000000..42573a9 --- /dev/null +++ b/pi-hole/docker-compose.yml @@ -0,0 +1,47 @@ +# More info at https://github.com/pi-hole/docker-pi-hole/ and https://docs.pi-hole.net/ +# Generally I would not suggest sharing your pihole publicly without restriction so I will not be including anything here that would allow that. +services: + tailscale-pihole: + hostname: pihole # Assign a name this so that you can set your domain name ex. https://pihole.penguin-dory.ts.net + ports: + - 53:53/tcp + - 53:53/udp + - 80:80/tcp + image: tailscale/tailscale:latest + environment: + - TS_AUTHKEY= # BE SURE TO ADD YOUR KEY AS NOTHING WILL WORK + #- TS_EXTRA_ARGS=--advertise-tags=tag:container # Uncomment this if you want to add a tag to your node. Useful for access control lists. + - TS_STATE_DIR=/var/lib/tailscale + - TS_USERSPACE=FALSE + - TS_ACCEPT_DNS=true + - TS_SERVE_CONFIG=/config/funnel.json + volumes: + - ${PWD}/config:/config + - ${PWD}/tailscale:/var/lib/tailscale + - /dev/net/tun:/dev/net/tun + cap_add: + - net_admin + - sys_module + pihole: + container_name: pihole + image: pihole/pihole:latest + # For DHCP it is recommended to remove these ports and instead add: network_mode: "host" + # ports: + # - "53:53/tcp" + # - "53:53/udp" + # - "67:67/udp" # Only required if you are using Pi-hole as your DHCP server + # - "80:80/tcp" + environment: + TZ: America/New_York + WEBPASSWORD: #'set a secure password here or it will be random' + # Volumes store your data between container upgrades + volumes: + - ./etc-pihole:/etc/pihole + - ./etc-dnsmasq.d:/etc/dnsmasq.d + # https://github.com/pi-hole/docker-pi-hole#note-on-capabilities + #cap_add: + # - NET_ADMIN # Required if you are using Pi-hole as your DHCP server, else not needed + restart: unless-stopped + depends_on: + - tailscale-pihole + network_mode: service:tailscale-pihole