114 lines
3.0 KiB
YAML
114 lines
3.0 KiB
YAML
version: "3.9"
|
|
|
|
volumes:
|
|
pihole:
|
|
name: pihole
|
|
dnsmasq:
|
|
name: dnsmasq
|
|
|
|
# smokeping:
|
|
# name: smokeping
|
|
# smokeping-config:
|
|
# name: smokeping-config
|
|
# netdataconfig:
|
|
# name: netdataconfig
|
|
# netdatalib:
|
|
# name: netdatalib
|
|
# netdatacache:
|
|
# name: netdatacache
|
|
|
|
networks:
|
|
proxy:
|
|
external: true
|
|
internal:
|
|
external: true
|
|
|
|
|
|
services: # check `nslookup google.de` for example and adjust /etc/resolv.conf nameserver to 127.0.0.1
|
|
pihole:
|
|
image: pihole/pihole
|
|
cap_add:
|
|
- NET_ADMIN
|
|
container_name: pihole
|
|
environment:
|
|
TZ: "Europe/Berlin"
|
|
WEBPASSWORD: "lmaa,dw."
|
|
networks:
|
|
- proxy
|
|
restart: unless-stopped
|
|
volumes:
|
|
- pihole:/etc/pihole/
|
|
- dnsmasq:/etc/dnsmasq.d/
|
|
labels:
|
|
- "traefik.enable=true"
|
|
- "traefik.http.routers.pihole.entrypoints=web"
|
|
- "traefik.http.routers.pihole.rule=Host(`pihole.localhost`) || Host(`pihole.local`)"
|
|
- "traefik.http.services.pihole.loadbalancer.server.port=80"
|
|
|
|
# Normal DNS coming in on 53 TCP, no TLS
|
|
- "traefik.tcp.routers.dns.rule=HostSNI(`pihole.localhost`)"
|
|
- "traefik.tcp.routers.dns.entrypoints=dns"
|
|
- "traefik.tcp.routers.dns.service=pihole"
|
|
|
|
# recieves traffic from both the TLS and non-TLS traefik routers
|
|
- "traefik.tcp.services.pihole.loadbalancer.server.port=53"
|
|
|
|
# Normal DNS coming in on 53 UDP
|
|
- "traefik.udp.routers.dns-udp.entrypoints=dns-udp"
|
|
- "traefik.udp.routers.dns-udp.service=pihole"
|
|
- "traefik.udp.services.pihole.loadbalancer.server.port=53"
|
|
|
|
# unbound:
|
|
# image: mvance/unbound
|
|
# container_name: unbound
|
|
# networks:
|
|
# - internal
|
|
# - proxy
|
|
# ports:
|
|
# - "5753:53/tcp"
|
|
# - "5753:53/udp"
|
|
# restart: always
|
|
|
|
|
|
# smokeping:
|
|
# image: lscr.io/linuxserver/smokeping
|
|
# container_name: smokeping
|
|
# environment:
|
|
# - PUID=1000
|
|
# - PGID=1000
|
|
# - TZ=Europe/Berlin
|
|
# restart: unless-stopped
|
|
# networks:
|
|
# - proxy
|
|
# volumes:
|
|
# - smokeping-config:/config
|
|
# - smokeping:/data
|
|
# labels:
|
|
# - "traefik.enable=true"
|
|
# - "traefik.http.routers.smokeping.entrypoints=web"
|
|
# - "traefik.http.routers.smokeping.rule=Host(`smokeping.localhost`) || Host(`smokeping.local`)"
|
|
# - "traefik.http.services.smokeping.loadbalancer.server.port=80"
|
|
#
|
|
# netdata:
|
|
# image: netdata/netdata
|
|
# container_name: netdata
|
|
# restart: unless-stopped
|
|
# cap_add:
|
|
# - SYS_PTRACE
|
|
# networks:
|
|
# - proxy
|
|
# volumes:
|
|
# - netdataconfig:/etc/netdata
|
|
# - netdatalib:/var/lib/netdata
|
|
# - netdatacache:/var/cache/netdata
|
|
# - /etc/passwd:/host/etc/passwd:ro
|
|
# - /etc/group:/host/etc/group:ro
|
|
# - /proc:/host/proc:ro
|
|
# - /sys:/host/sys:ro
|
|
# - /etc/os-release:/host/etc/os-release:ro
|
|
# labels:
|
|
# - "traefik.enable=true"
|
|
# - "traefik.http.routers.netdata.entrypoints=web"
|
|
# - "traefik.http.routers.netdata.rule=Host(`netdata.localhost`) || Host(`netdata.local`)"
|
|
# - "traefik.http.services.netdata.loadbalancer.server.port=19999"
|