
Die Arbeit mit Docker in der Konsole ist für viele eine vertraute Routine. Dennoch gibt es Fälle, in denen ein GUI-Webinterface sogar für sie nützlich sein kann. Der Artikel bietet einen Überblick über die derzeit auffälligsten Lösungen, deren Autoren versucht haben, bequemere (oder für bestimmte Situationen geeignetere) Interfaces für den Umgang mit Docker oder sogar für die Wartung großer Installationen anzubieten. Einige der Projekte sind noch ganz neu, während andere bereits im Sterben liegen...
Portainer
- ; ; .
- Lizenz: Open Source (zlib License und andere).
- Betriebssystem: Linux, Mac OS X, Windows.
- Sprachen/Plattform: Go, JavaScript (Angular).
- (admin / tryportainer).

Portainer (früher bekannt als UI for Docker) ist das beliebteste Webinterface zur Verwaltung von Docker-Hosts und Docker Swarm-Clustern. Es lässt sich sehr einfach starten — durch das Bereitstellen eines Docker-Images, dem als Parameter die Adresse/Sockel des Docker-Hosts übergeben wird. Es ermöglicht die Verwaltung von Containern, Images (kann sie aus Docker Hub abrufen), Netzwerken, Volumes und Geheimnissen. Unterstützt Docker 1.10+ (und Docker Swarm 1.2.3+). Beim Anzeigen der Container stehen grundlegende Statistiken (Ressourcennutzung, Prozesse), Protokolle und eine Konsole (Web-Terminal xterm.js) für jeden zur Verfügung. Es gibt eigene Zugriffslisten, die es ermöglichen, den Benutzern von Portainer Berechtigungen für verschiedene Operationen im Interface einzuschränken.
Kitematic (Docker Toolbox)
- (+ ); ; .
- Lizenz: Open Source (Apache License 2.0).
- Betriebssystem: Mac OS X, Windows.
- Sprachen/Plattform: Electron, Node.js, React und AltJS.

Standard-GUI für Docker-Benutzer auf Mac OS X und Windows, das Teil des Docker Toolbox ist — ein Installer-Paket, das auch Docker Engine, Compose und Machine umfasst. Es hat einen minimalen Funktionsumfang, der das Laden von Images aus Docker Hub, die Verwaltung grundlegender Container-Einstellungen (einschließlich Volumes, Netzwerken), das Anzeigen von Protokollen und die Verbindung zur Konsole ermöglicht.
Shipyard
- ; .
- Lizenz: Open Source (Apache License 2.0).
- Betriebssystem: Linux, Mac OS X.
- Sprachen/Plattform: Go, Node.js.

Shipyard ist nicht nur eine Benutzeroberfläche, sondern ein Ressourcenmanagementsystem für Docker, das auf einer eigenen API basiert. Die API in Shipyard ist RESTful im JSON-Format, 100% kompatibel mit der Docker Remote API und bietet zusätzliche Funktionen (insbesondere Authentifizierung und Zugangskontrollverwaltung, Protokollierung aller durchgeführten Operationen). Diese API bildet die Grundlage, um die herum die Webanwendung aufgebaut wurde. Für die Speicherung von systembezogenen Informationen, die nicht direkt mit Containern und Images in Verbindung stehen, wird in Shipyard RethinkDB verwendet. Die Webanwendung ermöglicht die Verwaltung von Containern (einschließlich Statistik- und Protokollansicht, Verbindung zur Konsole), Images, Knoten im Docker Swarm-Cluster und privaten Registries.
Admiral
- ; .
- Lizenz: Open Source (Apache License 2.0).
- Betriebssystem: Linux, Mac OS X, Windows.
- Programmiersprachen/Plattform: Java (VMware Xenon Framework).

Die Plattform von VMware ist für die automatisierte Bereitstellung von containerisierten Anwendungen und deren Verwaltung über den gesamten Lebenszyklus ausgelegt. Sie wird als leichtgewichtiges Lösung positioniert, die das Leben von DevOps-Ingenieuren erleichtern soll. Die Webanwendung ermöglicht die Verwaltung von Hosts mit Docker, Containern (+ Statistik- und Protokollansicht), Vorlagen (Images, die mit Docker Hub integriert sind), Netzwerken, Registries, Richtlinien (welche Hosts mit welchen Containern verwendet werden und wie Ressourcen verteilt werden). Sie kann den Zustand von Containern überprüfen (Health Checks). Sie wird als Docker-Image bereitgestellt und ausgeführt und funktioniert mit Docker 1.12+. (Siehe auch die Einführung in das Programm im mit vielen Screenshots.)
DockStation
- ; (ohne Quellcode).
- Lizenz: proprietär (Freeware).
- Betriebssystem: Linux, Mac OS X, Windows.
- Programmiersprachen/Plattform: Electron (Chromium, Node.js).

DockStation ist ein junges Projekt, entwickelt von belarussischen Programmierern, (die übrigens für die weitere Entwicklung). Zwei Hauptmerkmale sind die Ausrichtung auf Entwickler (nicht auf DevOps-Ingenieure oder Systemadministratoren) mit umfassender Unterstützung von Docker Compose und der Geschlossenheit des Codes (kostenlos nutzbar, gegen Bezahlung bieten die Autoren persönlichen Support und Erweiterungen an). Es ermöglicht nicht nur die Verwaltung von Images (Docker Hub wird unterstützt) und Containern (+ Statistik und Protokolle), sondern auch die Erstellung von Projekten mit einer Visualisierung der Beziehungen zwischen den in dem Projekt verwendeten Containern. Außerdem gibt es einen Parser (in der Beta-Version), der die Konvertierung von Befehlen ermöglicht. docker run im Docker Compose-Format. Funktioniert mit Docker 1.10.0+ (Linux) und 1.12.0 (Mac + Windows), Docker Compose 1.6.0+.
Einfache Docker-Benutzeroberfläche
- .
- Lizenz: Open Source (MIT-Lizenz).
- Betriebssystem: Linux, Mac OS X, Windows.
- Sprachen/Plattform: Electron, Scala.js (+ React auf Scala.js).

Eine einfache Schnittstelle zur Arbeit mit Docker, die die Docker Remote API verwendet. Ermöglicht die Verwaltung von Containern und Images (unterstützt Docker Hub), verbindet sich mit der Konsole und zeigt die Ereignisgeschichte an. Hat Mechanismen zum Löschen ungenutzter Container und Images. Das Projekt befindet sich in der Beta-Phase und entwickelt sich sehr langsam (die tatsächliche Aktivität scheint gemäß den Commits im Februar dieses Jahres zum Stillstand gekommen zu sein).
Weitere Optionen
Nicht im Überblick enthalten:
- — eine Plattform zur Verwaltung von Containern mit Orchestrierungsfunktionen und Unterstützung für Kubernetes. Open Source (Apache-Lizenz 2.0); läuft unter Linux; in Java geschrieben. Verfügt über eine Weboberfläche auf Node.js.
- — eine ‚entwicklerfreundliche Plattform zum Starten von Containern in der Produktion‘, die wesentlich mit Kubernetes konkurriert, aber als eine einfach zu verwendende Lösung ‚out of the box‘ positioniert wird. Neben der CLI und der REST API bietet das Projekt eine Weboberfläche () zur Verwaltung des Clusters und dessen Orchestrierung (einschließlich der Arbeit mit Clusterknoten, Diensten, Volumes, Geheimnissen) und zur Anzeige von Statistiken/Logs. Open Source (Apache-Lizenz 2.0); funktioniert unter Linux, Mac OS X, Windows; in Ruby geschrieben.
- — ein einfaches Dienstprogramm mit minimalen Funktionen und Dokumentationen. Open Source (MIT-Lizenz); läuft unter Linux (nur für Ubuntu-Paket verfügbar); in Python geschrieben. Unterstützt Docker Hub für Images und zeigt Logs für Container an.
- — ein Projekt mit dem Ziel, ‚die Bereitstellung komplexer containerisierter Anwendungen so einfach wie Drag-and-Drop zu machen‘. Zu diesem Zweck wurde ein eigenes Template-Verzeichnis für die Bereitstellung von Anwendungen erstellt (), dessen Ergebnisse bei der Suche nach Images/Anwendungen neben den Daten von Docker Hub angezeigt werden. Open Source (Apache-Lizenz 2.0); funktioniert unter Linux, Mac OS X, Windows; in Ruby geschrieben. Integriert mit dem Betriebssystem CoreOS und dem Orchestrierungssystem Fleet. Basierend auf der sichtbaren Online-Aktivität scheint es seit 2015 nicht mehr unterstützt zu werden.
- — Konsolen grafische Benutzeroberfläche zur Verwaltung von Docker-Containern und -Images. Open Source (MIT-Lizenz); in JavaScript/Node.js geschrieben.
Zum Schluss: Wie sieht die GUI in Dockly aus? Achtung, GIF mit 3,4 MB!
P.S.
Lesen Sie auch in unserem Blog:
- «».
- «».
- «».
Quelle: habr.com
