Links aus dem Video
Umkonfiguration Pi-Hole
Docker Compose Datei anpassen
Datei docker-compose.yaml
Wir ersetzen in der Datei den Part mit den Ports durch den network_mode
< ports:
< # DNS Ports
< - "53:53/tcp"
< - "53:53/udp"
< # Default HTTP Port
< - "7777:7777/tcp"
< # Uncomment the below if using Pi-hole as your DHCP Server
< - "67:67/udp"
---
> network_mode: host
Danach sieht die Datei wie folgt aus:
services:
pihole:
deploy:
replicas: 1
container_name: pihole
image: pihole/pihole:latest
network_mode: host
environment:
# Set the appropriate timezone for your location (https://en.wikipedia.org/wiki/List_of_tz_database_time_zones), e.g:
TZ: 'Europe/Berlin'
# Set a password to access the web interface. Not setting one will result in a random password being assigned
FTLCONF_webserver_api_password: 'correct horse battery staple'
# Volumes store your data between container upgrades
volumes:
# For persisting Pi-hole's databases and common configuration file
- './etc-pihole:/etc/pihole'
# Uncomment the below if you have custom dnsmasq config files that you want to persist. Not needed for most starting fresh with Pi-hole v6. If you're upgrading from v5 you and have used this directory before, you should keep it enabled for the first v6 container start to allow for a complete migration. It can be removed afterwards. Needs environment variable FTLCONF_misc_etc_dnsmasq_d: 'true'
- './etc-dnsmasq.d:/etc/dnsmasq.d'
- './var-log-pihole:/var/log/pihole'
cap_add:
# See https://github.com/pi-hole/docker-pi-hole#note-on-capabilities
# Required if you are using Pi-hole as your DHCP server, else not needed
- NET_ADMIN
# Required if you are using Pi-hole as your NTP client to be able to set the host's system time
- SYS_TIME
# Optional, if Pi-hole should get some more processing time
- SYS_NICE
restart: unless-stopped
Webserver Port in pihole.toml setzen
Im Anschluss ändern wir in der Datei etc-pihole/pihole.toml die Portnummer des integrierten Webservers.
Im VI könnt ihr mit dem Symbol "/" eine Suche nach einem Begriff starten.
[webserver]
...
port = "7777o,[::]:7777o"
Damit konfigurieren wir den eingebauten Webserver im Pi-Hole, damit er auf dem Port 7777 lauscht. Dieser Port wird dann durch das weiter oben gesetzte "network_mode: host" dann verwendet.
Konfiguration DHCP in der Pihole Weboberfläche
Im Interface von Pihole stellen wir ein:
Settings
DHCP
- DHCP server enabled aktivieren
- Start und End IP Adresses kontrollieren
- Gateway und Netmask kontrollieren
Anschliessend dann den Pihole Container neu starten
docker compose down
docker compose up -d
Ob alles geklappt hat kann man sich in den Logs ansehen:
docker compose logs -f
# Mit STRG+C die Ausgabe beenden
Wichtig … euer Pihole Container lauscht nun aktuell auf dem Port 7777. Bitte beim Aufrufen der Pi-Hole Administrationsoberfläche daran denken. http://192.168.1.51:7777/
DHCP auf eurem Router deaktivieren
Fritz Box
Heimnetz
Netzwerk
Netzwerkeinstellungen
IPv4 Einstellungen
- DHCP-Server aktivieren (bitte den Hacken raus nehmen)
Unifi Controller
Settings (Zahnrad links unten)
Networks
default
DHCP
- DHCP Mode: None
Kontrolle, ob DHCP funktioniert
Nun kommt der spannenden Teil. In der Oberfläche von Pi-Hole beobachten wir nun die pihole.log Datei:
System
Tools
Tail log files
- pihole.log
Wartet hier ab oder macht auf eurem Smartphone, Tablet mal WLAN aus und wieder an.
Im Logfile sollte etwas mit DHCPREQUEST und DHCPACK stehen.
Die verwendeten IP-Adressen, die per DHCP vergeben wurden, kann man auch ansehen in der Liste:
Settings
DHCP
- Currently active DHCP leases
DNS Einträge in Pihole
DNS Einträge könnt ihr nun zukünftig in Pi-Hole machen.
System
Settings
- Local DNS Records
Installation NGinx Proxy Manager
Docker Container einrichten
Wie üblich richten wir einen Docker Container ein mittels einer docker-compose.yaml Datei in einem eigenen Ordner.
services:
app:
image: 'jc21/nginx-proxy-manager:latest'
restart: unless-stopped
ports:
# These ports are in format <host-port>:<container-port>
- '80:80' # Public HTTP Port
- '443:443' # Public HTTPS Port
- '81:81' # Admin Web Port
# Add any other Stream port you want to expose
# - '21:21' # FTP
# Uncomment the next line if you uncomment anything in the section
environment:
# Uncomment this if you want to change the location of
# the SQLite DB file within the container
DB_SQLITE_FILE: "/data/database.sqlite"
# Uncomment this if IPv6 is not enabled on your host
DISABLE_IPV6: 'true'
volumes:
- ./data:/data
- ./letsencrypt:/etc/letsencrypt
Dann legen wir noch auf die Schnelle die notwendigen Ordner an:
mkdir data letsencrypt
… und starten den Container.
docker compose up
# bzw.
docker-compose up
Aufruf über die IP-Adresse und den Port 81. http://192.168.1.51:81/
Anmelden über:
- Email Address: admin@example.com
- Password: changeme
Quelle: https://nginxproxymanager.com/setup/#default-administrator-user
Einrichtung des ersten "virtuellen Hosts"
Im NGinx Proxy Manager richten wir den Proxy Host ein:
Hosts
Proxy Hosts
Add Proxy Host
- Domain Names: pihole.home.baecker.com
- Scheme: http
- Forward Hostname / IP: 192.168.1.51
- Forward Port: 7777
In Pihole richten wir einen DNS Namen oder einen CName ein:
Settings
Local DNS Records
- Einen local DNS Record für eure Maschine
- Domain: routeraddon.home.baecker.com
- IP: 192.168.1.51
- Einen local CNAME Record für euren virtuellen Host
- Domain: pihole.home.baecker.com
- Target: routeraddon.home.baecker.com
Und jetzt solltet ihr mittels http://pihole.home.baecker.com/admin/ auf euer Pi-Hole Webinterface zugreifen können.
SearXNG Container einbinden als zweiten "virtuellen Host"
Erst mal schnell das docker-compose.yaml File anlegen in einem eigenen Ordner:
services:
searxng:
image: searxng/searxng
environment:
- INSTANCE_NAME=searxng
- 'BASE_URL=http://search.home.baecker.com/'
- PUID=1000
- PGID=1000
volumes:
- ./data:/etc/searxng
ports:
- '8999:8080'
cap_add:
- CHOWN
- SETGID
- SETUID
user: 1000:1000
mkdir data
docker compose up -d
# oder
docker-compose up -d
# Kontrolle ob er richtig läuft
docker compose logs -f
# oder
docker-compose logs -f
# Mit STRG+c die Ausgabe beenden
Im NGinx Proxy Manager richten wir den Proxy Host ein:
Hosts
Proxy Hosts
Add Proxy Host
- Domain Names: search.home.baecker.com
- Scheme: http
- Forward Hostname / IP: 192.168.1.51
- Forward Port: 8999
In Pihole richten wir einen DNS Namen oder einen CName ein:
Settings
Local DNS Records
- Einen local CNAME Record für euren virtuellen Host
- Domain: search.home.baecker.com
- Target: routeraddon.home.baecker.com
Und jetzt solltet ihr mittels http://search.home.baecker.com/ auf die Startseite von SearXNG kommen