Was ist Docker und was sind die Vorteile?
Sicherlich hat heute jeder schon einmal von Docker gehört, kann sich aber selbst nicht viel darunter vorstellen. Auch wenn heute viele Anbieter nicht mehr auf Docker aufbauen, ist es immer noch interessant und bietet in einfachen Schritten Möglichkeiten in Hülle und Fülle … und dies kostenlos. Da es Ziel dieses Blocks ist, eine komplette Lösung eines Heimservers mit kostenfreien Mitteln (ausgenommen Hardware) aufzubauen, ist Docker u.a. ein wichtiger Bestandteil dieses Projekts.
Docker ist ein beliebtes Open-Source-Tool, das eine portable und konsistente Laufzeitumgebung für Softwareanwendungen bietet. Docker verwendet sogenannte Container als Umgebungen, die voneinander getrennt ausgeführt werden und das System gemeinsam nutzen.
Ein Vorteil ist es hierbei, dass durch die Isolierung deutlich weniger Ressourcen verbraucht werden, als bei einem herkömmlichen Server oder einer virtuellen Maschine.
Docker ist heute für viele Betriebssysteme- und NAS-Umgebungen verfügbar. Wie Sie Docker installieren, überlasse ich gerne anderen Portalen, da ich mein Fokus in diesem Block auf die einfache Erläuterung der IT im Heimbereich legen möchte.
Sie finden Installationsbeispiele im Überfluss auf Webseiten und auf YouTube, wie z.B. https://www.youtube.com/watch?v=9T23qVoCIB0 (Achtung: Sie verlassen durch Klick auf den Link diesen Block. Der Anbieter streamt sein Video auf YouTube und steht in keiner Verbindung zu dieser Website)
Was ist der Hauptvorteil von Docker?
Mit Docker können Sie sicherstellen, dass Ihre Anwendungen in jeder Umgebung ausgeführt werden können. Dieser Vorteil entsteht, weil alle Anwendungen und deren Abhängigkeiten in einer Anwendung, dem Dpckersystem zusammengeführt werden.
Das wiederum bedeutet, dass verschiedenste Anwendungen mit Docker generiert werden. Dadurch wird gewährleistet, dass Anwendungen sich nicht gegenseitig stören. Es können Container erstellt werden, auf dem verschiedene Anwendungen installiert sind … stürzt z.B. eine Anwendung ab, betrifft dies nicht weitere Container, die weiterhin ausgeführt werden.
… ein weiterer großer Vorteil: Alle Container (Anwendungen) laufen isoliert. Dies bezeichnet man auch gerne als „Stand alone System“, da sämtliche Abläufe und Funktionen im Gegensatz zu virtuellen Maschinen (VMs) systemunabhängig geschehen.
Anwendungen und Services mit Docker verwalten
Docker bietet die Möglichkeit, eine Anwendung auf einem Linux-, Mac- und Windows-basierten System mit der IT zu verbinden.
Diese können über ein minimalisiertes Betriebssystem verfügen und fordern daher weniger Rechenleistung, als beispielsweise eine Virtuelle Maschine.
Mit nur wenigen Klicks wird die Software über einen Docker Container auf dem System installiert und ist einsatzbereit. Daraufhin können viele unterschiedliche Anwendungen, wie Homematic, Datenbanken, ERP-Systeme, Webserver oder Cloud-Anwendungen umgesetzt werden.
Wie verwende ich Docker in unserer Umgebung
Docker ist für unsere Familien-IT neben der Cloud ein wichtiger Bestandteil einzelner Anwendungen. So setzten wir z.B. folgende Programme ein, um den Alltag zu erleichtern, aber auch die Sicherheit aller Geräte zu gewährleisten.
- Portainer zur Verwaltung aller Container unter Docker)
- Pi-hole (eine freie Software mit der Funktion eines Tracking- und Werbeblockers)
- Mosquitto (MQTT-Nachrichten von Client-Geräten zu synchronisieren … HomeControl)
- HomeAssistant (Steuerungszentrale für Licht, Heizung, Deko, Multimedia, WebCam, Bewässerung, etc.)
- Paperless für die Verwaltung von Dokumenten und Scanns (Briefe, Policen, Rechnungen, Mails, etc.) Familienmitgliedern zugeordnet
- Bitwarden zur Verwaltung der Passwörter inkl. Zwei-Faktor-Authentisierung (2FA)
- MariaDB zur Bereitstellung von Datenbanken
- Heimdall (Weboberfläche mit strukturierten Untermenüs für Lesezeichen (Hyperlinks), u.a. alle familienbezogene Webportale
Weiter Funktionen, wie Chat (Video/Text), Kalender, Kontakte, Notizen, Cloud, Office werden heute via Synology (zuvor mit Nextcloud) bereitgestellt.
Ist Docker ein Betriebssystem?
Anders als bei der Virtualisierung mit virtuellen Maschinen (VM) enthält ein Docker-Container kein eigenes Betriebssystem. Stattdessen greifen alle auf einen Host zu, auf dem Docker läuft.
Wo speichert Docker die Daten?
Docker legt hierfür auf dem Host für jeden Container, der das Image verwendet, ein separates Verzeichnis an. Den Ort kann man auf Wunsch selbst festlegen. Dies ist besonders interessant, wenn man eine eigens hierfür bereitgestellte HDD bereitstellt.
Funktioniert Docker unter Windows?
Sie können sowohl Linux- als auch Windows-Programme und ausführbare Dateien in Docker-Containern ausführen. Die Docker-Plattform läuft stabil unter Linux (auf x86-64, ARM und vielen anderen CPU-Architekturen) und natürlich unter Windows (x86-64).
Warum benötige ich einen Docker-Desktop?
Es bietet eine unkomplizierte grafische Benutzeroberfläche, mit der Sie Ihre Container direkt von Ihrem Computer aus verwalten können. Docker Desktop reduziert den Zeitaufwand für komplexe Setups, sodass Sie sich auf das Schreiben von Code konzentrieren können.
Das schöne dabei ist, dass der Desktop selbst als Container unter Docker läuft. Ich persönlich arbeite mit Portainer. Es ist schnell installiert, übersichtlich und über die Weboberfläche schnell zugänglich. Auch eine nachträgliche Bearbeitung der Container-Plattform oder aber die Sicherung eines gesamten Containers ist im Nachhinein einfach zu handhaben.
Näheres hierzu aber noch, wenn ich das Thema „mein privater VM-Server“ fertigstellen konnte. Hier möchte ich Ihnen eine simple Lösung für den Heimbereich präsentieren, welche in alle Richtungen ausbaufähig ist … Docker sowie reine MV-Lösungen kostenlos, ohne Einschränkungen.

