Da auf dem Raspberry Pi jetzt ein funktionierender docker installiert ist, wird Pi-hole als docker container ausgeführt. Dazu muss folgende docker-compose Datei angelegt werden.
nano pihole.yaml
version: "2.2"
volumes:
pihole-etc:
dnsmasq-etc:
services:
service:
image: pihole/pihole:2022.01.1
cpu_count: 2
mem_limit: 64M
memswap_limit: 128M
mem_swappiness: 0
hostname: docker-0
dns:
- 127.0.0.1
- 1.1.1.1
ports:
- "53:53/tcp"
- "53:53/udp"
- "80:80/tcp"
environment:
TZ: 'Europe/Berlin'
WEBPASSWORD: '#### Ihr sicheres passwort ###'
FTLCONF_REPLY_ADDR4: '#### LAN IP-Adresse ###'
VIRTUAL_HOST: 'docker-0'
DNSMASQ_LISTENING: 'all'
volumes:
- 'pihole-etc:/etc/pihole'
- 'dnsmasq-etc:/etc/dnsmasq.d'
restart: unless-stopped
Pi-hole wird jetzt mit folgenden Befehl heruntergeladen und dann ausgeführt.
docker-compose -f pihole.yaml --project-name pihole up -d
Die Einstellung “DNSMASQ_LISTENING” muss auf “all” gestellt sein, da es ansonsten mit dem docker bridge netzwerk nicht funktioniert. Wird der Pi-hole Dienst hinter einer Firewall sicher im privaten Netzwerk (LAN) betrieben ist die Einstellung auch kein Problem. Auf öffentlichen Servern ist jedoch Vorsicht angezeigt.
Damit Pi-hole auch seinen Dienst verrichten kann, müssen alle Computer im Netzwerk den Pi-hole Dienst als primären DNS Server nutzen. Am besten geht das über eine Anpassung im DHCP.
Ich hoffe einen kleinen Einblick/Überblick gegeben zu haben wie eine cooles Open-Source Tool unseren IT-Alltag ein wenig besser machen kann.