Docker ist eine Containerisierungsplattform, die es Entwicklern ermöglicht, Anwendungen und deren Abhängigkeiten in einen portablen Container zu packen. Dieser Container kann dann auf jedem System ausgeführt werden, unabhängig von der zugrunde liegenden Infrastruktur.
Da es reichlich Anwendungen im Internet gibt, kann man sie relativ schnell zum Laufen bekommen. Fündig wird man z. B. bei Docker Hub oder linuxserver.
Hauptmerkmale von Docker
- Entwickler können Anwendungen in einer isolierten Umgebung erstellen und ausführen
- Container sind leichtgewichtig und benötigen weniger Ressourcen als virtuelle Maschinen
- Ermöglicht eine konsistente Ausführung von Anwendungen in verschiedenen Umgebungen
Docker vereinfacht die Softwarebereitstellung, indem es Anwendungen zusammen mit allen notwendigen Komponenten in einem standardisierten Container verpackt, der überall gleich funktioniert.
Docker-Compose
Docker Compose ist ein Open-Source-Tool, das die Verwaltung von Anwendungen erleichtert, die aus mehreren Docker-Containern bestehen. Mit Docker Compose können Entwickler alle Container, die eine Anwendung benötigt, in einer einzigen YAML-Datei definieren und konfigurieren. Diese Datei beschreibt, welche Container gestartet werden sollen und wie sie miteinander kommunizieren sollen.
Hauptmerkmale von Docker Compose
- Einfachheit: Alle benötigten Container und ihre Konfigurationen werden in einer
docker-compose.yml
Datei festgehalten. Dies ermöglicht eine einfache Verwaltung und gemeinsame Nutzung der Anwendungskonfiguration. - Multi-Container-Management: Mit einem einzigen Befehl (
docker-compose up -d
) können alle definierten Container gleichzeitig gestartet werden, was den Entwicklungsprozess beschleunigt und die Wahrscheinlichkeit von Fehlern reduziert. - Netzwerke und Volumes: Docker Compose erleichtert die Erstellung von Netzwerken für die Kommunikation zwischen Containern sowie die Verwaltung von Datenvolumes für die gemeinsame Datennutzung.
Portainer
Portainer ist eine benutzerfreundliche Verwaltungsoberfläche für Docker-Container. Es bietet eine grafische Benutzeroberfläche (GUI), die es Entwicklern und Administratoren ermöglicht, Docker-Umgebungen einfach zu verwalten, ohne komplexe Kommandozeilen-Befehle verwenden zu müssen.
Hauptmerkmale von Portainer
- Einfache Bedienung: Portainer bietet eine intuitive Weboberfläche zur Verwaltung von Containern, Images, Netzwerken und Volumes.
- Übersichtliches Dashboard: Es zeigt auf einen Blick den Status aller Container, Images und Ressourcen.
- Multi-Plattform-Unterstützung: Portainer kann nicht nur Docker, sondern auch Kubernetes und andere Container-Umgebungen verwalten.
- Sicherheit: Es ermöglicht eine zentralisierte Zugriffsverwaltung und Autorisierung für verschiedene Container-Umgebungen.
Portainer läuft selbst als Docker-Container und kann schnell installiert werden. Es eignet sich besonders gut für Einsteiger in die Container-Technologie, da es die Komplexität der Container-Verwaltung reduziert und eine visuelle Darstellung der laufenden Systeme bietet.
In Portainer können Inhalte von Docker-Compose Dateien eingefügt und daruas ein Container erstellt werden. Ich finde diese Vorgehensweise super.
Zum Einstieg empfehle ich die Playlist auf YouTube: Videos