Ich habe wieder mit Docker und Portainer befasst und habe einiges lernen können Volumen Erstellung, Binds und Ports Bindungen sowie das ganze mit WireGuard ins Internet Routen. Ich lernte, dass auch Docker Ressourcen sparender ist als einzelne KVM Server. Auch die Ressourcen Anpassungen innerhalb des Portainer ist einfach. Was mich auch sehr erfreut ist, dass viele Anwendungen bereits in einem Docker Container „verpackt“ sind und deshalb schneller zu installieren sind. Es sind für mich wie eingepackte Pakete, die man nur einmal richtig konfigurieren muss, damit diese im Anschluss laufen.
1. Was ist Portainer?

Portainer ist einfach gesagt eine Administrations-Oberfläche womit man einzelne Container und Stacks verwalten kann und diese auch somit erstellen und betreiben kann. Es ist aber hier zu beachten, dass es eine kostenlose Community Edition gibt und eine Buissnes Edition. Ich nutze hier die Community Edition, die man hier in dieser Anleitung installieren kann, mit zwei Befehlen. Das Ganze ist am Anfang gerade ein bisschen gewöhnungsbedürftig, da es eben verschiedene Funktionen gibt, die man kurzzeitig lernen muss. Keine Sorge, auch Tutorials diesbezüglich folgen. Dieser Beitrag ist der erste auf meinem Blog worüber es um Docker und um meine Umgebung geht, wie ich diese aufgebaut habe und was man damit sogar realisieren kann.
2. Was bedeuten die sogenannten „Stacks“ bei Portainer?

Mit den Stacks in der Portainer Verwaltung, kann man Docker Compose Files erzeugen, einfügen im Web Editor nochmals bearbeiten. Anschließend, wenn man seine Konfiguration fertig hat, kann es losgehen mit dem Deploy es wird dann das angegebene Image heruntergeladen, installiert und konfiguriert je nach Konfiguration File.
3. Was sind Volumen in Docker?

Vor dem: kommt der Reale Server Pfad und dahinter der Container Pfad.
Die Docker Volumes sind festgelegte Speicherplätze, wo man seine Docker Files ablegt. Binds in Docker Volumen sind einfach gesagt feste Ordner wo alles abgelegt wird. Will man Z.b in /home/music seine Musikdateien speichern, damit diese für Z.b Musik Media Server zugänglich sind, kann man diese mit einem Volumen Binding innerhalb des Containers wieder mounten. Es gibt einmal den virtuellen Pfad (Container) und den realen Server Pfad (Z.b /home/music). Wenn ich also meine Musik in „/home/music“ speichern möchte und diese im Container in „/mnt/music“ wiederfinden möchte, gebe ich dies in Portainer an, sodass dies umgesetzt und konfiguriert wird.
4. Port Binding und Netzwerke
Es gibt verschiedene Möglichkeiten in der Port, Struktur und Netzwerkkonfiguration. Es gibt natürlich verschiedene Möglichkeiten, seine Container im Internet erreichbar zu machen. Z.b Host → Direkte festgelegte Ports oder Random Ports auf dem Host, Bridge → Ein Lokales privates Subnetz innerhalb Docker sei es /24, /27, /28 etc. um diese untereinander Kommunizieren zu lassen, MTU Anpassungen oder mehr. Auch hier werden Tutorials folgen, auch das nutzen mehrere verschiedene Statischen IPv4 oder IPv6 Adressen ist möglich. Möchte man seine Docker Container auf einem separaten Homeserver hosten, eignet sich hierfür eine VPN (Virtual Private Network) Verbindung für das ideale Hosting. Man kann bei der WireGuard Software (VPN-Protokoll & Software) ganz einfach seinen Homeserver über eine oder mehrere Statische IPv4 oder IPv6 Adressen Routen ins Internet.
Damit muss man keine DynDNS oder sonstige Einstellungen im Hausrouter mehr vornehmen.
Ich habe diesbezüglich bereits mehrere vorhandene Tutorials veröffentlicht, die ich kurz hier unten zusammenfassen werde
Wireguard Statische IPv4 Adressen routen
Wireguard Portweiterleitung mit LXC Containern
IPv6 KVM Server – Geld sparen und IPv4 Adresse von extern routen
E-Mail Server Zuhause betreiben + Statisches VPN Routing
Was ist Docker Hub?

Das Docker Hub ist eine offizielle Plattform wo man verfügbare Applikationen suchen und finden kann, die man Beispielsweise im Portainer herunterladen und installieren kann. Standardmäßig ist Docker Hub im Portianer integriert als Anonymous Download User. Aber im Portainer kann man auch seine Loginzugänge setzen, wenn man sich bei Docker Hub registriert hat. Somit können mehr stündliche Downloadlimits mit einem Account freigeschaltet werden. Man hat aber auch die Möglichkeit bei Github nach Dockerfile zu suchen und im Portainer wiederum hochzuladen. Man ist also natürlich nicht nur am Docker Hub gebunden, aber es geht mit Docker Hub deutlich schneller mit dem Deployen.
Fazit
Mit Docker kann man ganz einfach seine Applikationen installieren und beispielsweise mit Portainer zusätzlich verwalten. Auch dass Docker Ressourcen sparender ist macht das Einsetzen sogenannter NAS Systeme auch möglich für das Hosten von Docker. Docker und Portainer zusammen sind eine gute Mischung für die Flexibilität und Verwaltung seiner Anwendungen und Containern. Docker bleibt also für mich interessant und ich freue mich zukünftig mehr darüber berichten zu können.
Schreibe einen Kommentar