Docker vs. Rocket

Gepostet am: 11. März 2015

Von

Ein neuer Kontrahent steigt in den Ring und fordert den Marktführer heraus: Wie Alex Polvi, CEO von CoreOS Inc. im Dezember bekannt gab, werde man mit Rocket nun einen eigenen Linux-Container-Manager entwickeln. Wir werfen einen Blick auf das System und vergleichen es mit seinem bewährten Konkurrenten Docker.

Rocket ist eine neue modulare Container-Laufzeitumgebung, laut CoreOS ausgelegt auf maximale Geschwindigkeit und Sicherheit. Es dient in erster Linie dem Download von Anwendungs-Images aus dem Internet und startet diese innerhalb eines Containers.

Warum entwickelt CoreOS nun Rocket?

Als Docker Anfang 2013 der Öffentlichkeit vorgestellt wurde, stand dahinter die Idee eines Standard-Containers: eine einfache, schlanke und wiederverwendbare Komponente, die auf unterschiedlichen Systemen eingesetzt werden kann.

Mittlerweile wird Docker ständig um neue Funktionen erweitert und um Tools ergänzt, etwa zur Verwaltung von Cloud-Servern oder des Cluster-Management. All diese Dinge werden allerdings schon von CoreOS selbst angeboten. Da sich Docker aus Sicht von CoreOS damit immer weiter vom ursprünglich definierten schlanken Ansatz zu einem aufgeblähten monolitischen Moloch entwickelt hat, sah man die Zeit reif, um eine eigene Lösung in Form von Rocket zu etablieren.

Docker vs. Rocket: Wesentliche Unterschiede

Der gravierendste Design-Unterschied besteht darin, dass Rocket aus einem einzelnen statischen Command Line Tool besteht, das von Grund auf komplett neu entwickelt wurde. Dieses Toolmit dem Namen rkt dient dazu, sogenannte App Container auszuführen.

Im Gegensatz dazu wurde Docker als komplexe Client/Server-Lösung konzipiert, bei der ständig ein Daemon im Hintergrund läuft. Mit diesem kommuniziert der Docker-CLI-Client über eine Restful-API.

Ein App Container ist die offene Spezifikation eines Applicaton-Image-Formates (ACI), einer Container-Laufzeitumgebung (Runtime) und eines Discovery-Mechanismus. Rocket ist nun die erste Implementierung dieser neuen Spezifikation.

Da das Applicaton-Image-Format nicht mit dem Docker-Image-Format kompatibel ist, existiert inzwischen ein Community Projekt, um Docker-Images in das Rocket-Format zu konvertieren.

Dockers Reaktion und die Zukunft

Docker-CEO Ben Golub reagiert in einem offiziellen Blog-Beitrag gelassen auf die Vorstellung von Rocket. Für Konkurrenzdenken besteht allerdings auch (noch) kein Anlass, da CoreOS die Docker-Runtime auch weiterhin voll unterstützen wird.

We will continue to make sure CoreOS is the best place to run Docker.

Ben Golub, CEO, Docker

Die Zukunft wird zeigen, ob und wie sich Rocket am Markt etabliert. Letztlich wird der Erfolg vom Support der Community und der großen Hersteller abhängen und davon, inwieweit diese Ihre bestehenden Cloud- und Docker-Tools für Rocket anpassen.

Aktuell befindet sich Rocket noch im Protoypen-Stadium, der Quellcode ist auf Github verfügbar.


2017-11-28T16:29:13+00:00