Debian inkl. Docker auf FW-7543B (Teil2)

Nachdem nun Docker und Docker-Compose installiert wurden, kann gleich mal getestet werden, ob alles funktioniert.
Dazu nutze ich PiHole und Portainer und ich nutze beides mit Docker-compose. Der Vorteil liegt darin, dass ich eine Datei „docker-compose“ habe und nicht einen langen Start-Befehl eingeben muss.
Allgemeines
Die Gretchenfrage ist nun, wo lege ich die Docker-Compose-Dateien ab. Grundsätzlich ist es dem Linux-system egal, wo man die Dateien ablegt, solange man pro Docker-Compose-Applikation einen eigenen Ordner hat. Grundsätzlich sollten auch alle User darauf zugreifen können, welche Docker auf einer Maschine verwalten.
Der FHS (Filesystem Hierarchy Standard) zu folge, wäre der Ordner „/srv“ wohl der richtige Ordner.
Man kann aber auch einen Ordner ausserhalb der Linux-Vorgaben anlegen.
Aber das soll für den kurzen Einstieg keine Rolle spielen, wehalb ich für diesen Eintrag erstmal in meinem Homeverzeichnis bleibe.

Ich starte einfach mit dem Container „PiHole“

PiHole
Das schöne an PiHole ist, dass man beim Herumspielen auch schon sofort ein Ergenbis hat.
Ich suche PiHole auf DockerHub. Im Suchfeld einfach „PiHole“ eingeben und schon bekommt man einige Treffer. Ich nehme das Image „pihole/pihole“.
Öffnet man den Suchtreffer, bekommt man eine Docker-Compose-Beipieldatei.
Bei Docker-Compose können in das docker-compose.yaml-File auch Variablen übergeben werden. Dafür gibt es die versteckte „.env“-Datei.

Zuerst lege ich im Homeverzeichnis „~“ ein Unterverzeichnis „docker“ and und darin ein Verzeichnis „pihole“
In dieses Verzeichnis „~/docker/pihole“ lege ich die 2 Dateien ab.
Hier die beiden Dateien:
Zuerst die das „docker-cpompose.yaml“.

Wie man sieht, habe ich hier den Hostnamen, die Zeitzone und das Webpasswort für Variablen angepasst.
Diese übergebe ich mit der „.env“-Datein

Zeit den Container zu starten:

Docker Compose Pihole

ob der Container Läuft kann man mit „docker ps“ prüfen.

Im „docker-compose.yaml“-file habe ich angegeben, dass der Port 85 auf den Port 80 des containers weitergeleitet werden soll.
Somit kann ich PiHole nun mit „http://:85/admin“ aufrufen.
Pihole Main
Und mich anmelden.
Pi-Hole Login

Im Homeverzeichnis habe ich unter „pihole“ nun zwei weitere Dateien: „etc-dnsmasq.d“ und „etc-pihole“.
Das sind Verzeichnisse, welche dem Docker-Container im lokalen Festplattenspeicher zugewiesen sind und wo persistente Daten von Pihole gespeichert werden.
Ab jetzt brauche ich nur das Verzeichnis „pihole“ komplett zu sichern und kann es an jedem beliebigen Rechner (mit installiertem Docker-Compose) wieder ohne Datenverlust starten.

Portainer
Ich möchte auch noch kurz den Portainer installieren. Leider gibt es auf der Community-Seite nur einen Befehl zum starten. Ich würde aber gerne Docker-Compose verwenden.
Auf der Portainer-Community-Seite wird unter „Deployment“ ein Docker-Volume erzeugt, welches ich so ebenfalls nicht nutzen möchte. Ich hätte gerne wieder eine lokale Ablage.
Zuerst lege ich wieder das Verzeichnis an „~/docker/portainer“ und erzeuge darin eine „docker-compose-yaml“-Datei mit folgendem Inhalt:

Wenn ich jetzt in das Verzeichnis „~/docker/portainer“ wechsel und den Container starte

Wird das Image heruntergeladen und der Container gestartet.
Docker Compose Portainer

Mit „docker ps“ kann ich wieder controllieren, ob der Container gestartet ist:

Und man kann nun in einem Browser mit „http://:9000“ den Portainer aufrufen.
Bei der Erstanmeldung muss man noch ein Passwort vergeben
Portainer 01
Danach kann man auch hier seine Docker-Container verwalten.
Porteiner 02
Portainer 03

Nun kann das Spielen mit Docker beginnen ….