IT Projekte / Home Lab / Smart Home / Games

Allgemein, Docker, Raspberry Pi

AdGuard Home mittels Docker auf einem Raspberry Pi 4 installieren

In diesem Beitrag möchte ich Dir zeigen, wie Du AdGuard Home mittels Docker installieren kannst. AdGuard Home ist, wie Pi-hole eine Software, die zum Sperren von Werbung und Trackern genutzt werden kann. Ebenfalls kann sie, dank der Einrichtung als DNS-Server im gesamten Heimnetzwerk genutzt werden. Mit der leichten Handhabung und Bedienung lassen sich auch viele Dinge schnell und einfach realisieren.

Du benötigst Folgendes:

  • Docker
  • Docker Compose

Docker mittels Repository unter Debian installieren
Docker auf dem Raspberry Pi 4 installieren
Docker Compose installieren – Debian 11 oder Raspberry Pi 4

1. AdGuard Home Ordner anlegen

Damit Du die Daten persistent und leicht zugänglich speichern kannst. Lege zunächst folgende Ordner an:

mkdir adguard
mkdir adguard/workdir
mkdir adguard/confdir
AdGuard Home – Ordner anlegen

2. Erstelle die .yml-Datei

Erstelle zu nächst eine docker-compose.yml-Datei, um hier drinnen mittels Docker Compose Deinen AdGuard Home Service zu starten und zu stoppen.

nano docker-compose.yml

Hier kannst Du mit einem einfachen Rechtsklick in Dein Terminal nun folgenden Code einfügen. Als ersten gibst Du die Compose Version an, dann legst Du einen Service an, welcher adgaurdhome lautet. In diesem gibst Du den Namen des Containers und das Image, aus welchem der Container gebaut werden soll, an.

Als Ports gibst Du die folgenden zu Kommunikation und zur Administration von AdGuard Home an. Unter dem Punkt Volume trägst Du den Pfad, zu Deinen zuvor angelegten Ordnern an und zum Schluss sagst Du, dass der Container immer laufen soll. So startet dieser auch von selbst nach einem Neustart.

Ich habe die Ports auf ein Minimum begrenzt, für weitere Ports schau doch hier vorbei.
Der Port 53 ist für das reine DNS verantwortlich. Die Ports 80, 443 und 3000 gibst Du an, wenn Du neben dem Admin Panel von AdGuard Home auch diesen als HTTPS/DNS-over-HTTPS Server nutzen möchtest.

version: "3"

services:
  adguardhome:
    container_name: adguardhome
    image: adguard/adguardhome:latest
    ports:
      - "53:53/tcp"
      - "53:53/udp"
      - "80:80/tcp"
      - "443:443/tcp"
      - "443:443/udp"
      - "3000:3000/tcp"
    volumes:
      - '<Dein_Pfad>/workdir:/opt/adguardhome/work'
      - '<Dein_Pfad>/confdir:/opt/adguardhome/conf'
    restart: unless-stopped

Dies speicherst Du mit Strg + S und schließt es mit Strg + X.

3. Starte AdGuard Home und Login

Jetzt kannst Du Deinen AdGuard Home mit folgendem Befehl starten:

sudo docker compose up -d

Hierbei wird zunächst das Image von AdGuard Home heruntergeladen und im Anschluss der Container gestartet. Dabei wurden auch die beiden Volumen Ordner in Deinem aktuellen AdGuard-Ordner angelegt. Hier werden die Daten gespeichert.

Auf Deinen AdGuard Home kannst Du über die IP-Adresse mit dem Port 3000 zugreifen.

http://<IP-Adresse>:3000/

4. Einrichtung AdGuard Home

Fange jetzt mit der Einrichtung von AdGuard Home an.

AdGuard Home - Einrichtung beginnen
AdGuard Home – Einrichtung beginnen

Setze hierbei ganz stumpf auf alle Schnittstellen und die vorgegebenen Ports. Wie Du schon sehen kannst, musst Du am Ende Deiner Instanz eine feste IP-Adresse zuweisen, damit diese auch wiederum als DNS in z. B. Deiner Fritz!Box eingetragen werden kann.

AdGuard Home - Schnittstellen bestimmen
AdGuard Home – Schnittstellen bestimmen

Vergebe hier einen Nutzernamen als auch ein entsprechend sicheres Passwort, für Deinen Administrator Account.

AdGuard Home - Authentifizierung
AdGuard Home – Authentifizierung

Eine Erinnerung, dass Du Deine Geräte konfigurieren sollst. Diesen Schritt führen wir etwas später aus.

AdGuard Home - Konfiguriere Deine Geräte
AdGuard Home – Konfiguriere Deine Geräte

Die erst Einrichtung ist erfolgreich abgeschlossen.

AdGuard Home - Abgeschlossene erst Einrichtung
AdGuard Home – Abgeschlossene erst Einrichtung

5. Richte AdGuard Home ein

Melde Dich zunächst mit Deinen so eben vergebenen Daten an.

AdGuard Home - Login
AdGuard Home – Login

5. Ad-Guard Home als DNS-Server in der Fritz!Box eintragen

Für die Einrichtung AdGuard Home als DNS-Server zu nutzen kannst Du diesen in Deiner Fritz!Box als DNS-Server hinterlegen. Alternativ kannst Du auch sonst die Konfiguration von jedem Deinem Gerät in Deinem Netzwerk anpassen. AdGuard als DNS-Server in der Fritz!Box zu hinterlegen, ist aber einfacher.

Gehe zunächst auf fritz.box

Wähle Heimnetz und Netzwerk auf der linken Seite.

Pi-hole - Fritz!Box Netzwerk
AdGuard Home – Fritz!Box Netzwerk

Gehe zu Netzwerkeinstellungen:

Pi-hole - Fritz!Box Netzwerkeinstellungen
AdGuard Home – Fritz!Box Netzwerkeinstellungen

Trage in den IP-Adressen IPv4-Einstellungen und IPv6-Einstellungen (falls nötig), unter dem Punkt Lokaler DNS-Server die IP-Adresse Deines AdGuards ein.

Ist das geschehen, geht ab diesem Punkt, sobald sich Deine Endgeräte erneut mit dem Netzwerk verbunden haben, die gesamte Kommunikation über Deinen AdGuard Home. In diesem kannst Du entsprechende Filtereinstellungen vornehmen.

6. AdGuard Filter einstellen

Ist Dein AdGuard Home als DNS-Server hinterlegt in Deinem Router, dann kannst Du Dich darum kümmern, Filterlisten hinzuzufügen und die Einstellungen generell anzupassen.

Filterlisten fügst Du über den Reiter ‘Filter’ und ‘DNS-Sperrliste’ hinzu. Filterlisten selbst findest Du zum Beispiel hier:

Ebenfalls kannst Du aber auch eine Liste einbinden mit Links, welche bitte nicht blockiert werden sollen.

Falls Du aktiv gewisse Dienste in Deinem Netzwerk blockieren magst, kannst Du das weitestgehend fehlerfrei über den Reiter ‘Filter’ und den Punkt ‘Gesperrte Dienste’ einfach per Switch ein und ausschalten.

Und über die ‘Benutzerdefinierten Dienste’ kannst Du auch eigene Adressen per RegEx angeben, welche blockiert werden sollen.

Titelbild von Docker und AdGuard Home