Docker gegen CoreOS Rkt
Wenn Sie sich nicht unter einem Stein in einem Rechenzentrum aus dem letzten Jahrhundert versteckt haben, haben Sie wahrscheinlich schon von Docker gehört, der führenden Software-Container-Lösung auf dem Markt. Und wenn ja, haben Sie wahrscheinlich auch schon von seinem Hauptkonkurrenten CoreOS gehört. Schauen wir uns an, wie sich die beiden in diesem Vergleich schlagen.
Der DevOps-Zeitgeist hat eine große Rolle dabei gespielt, diese beiden Anbieter in den IT-Mainstream zu katapultieren - für Praktiker bieten Container eine beispiellose Konsistenz und Portabilität beim Testen und Versenden moderner Softwareanwendungen. Traditionell würden Sie einen virtuellen Computer starten, um Anwendungen zu testen und bereitzustellen. Heutzutage bieten Container eine leichtere, einfach zu verwaltende Option für die Bereitstellung sofort einsatzbereiter Anwendungen, unabhängig von der Umgebung.
CoreOS Rocket (rkt) ist der erste glaubwürdige Herausforderer der Dominanz von Docker im Container-Bereich. Einfach ausgedrückt handelt es sich bei rkt um eine sicherere Container-Technologie, die viele der Fehler des Container-Modells von Docker beheben soll. Alex Polvi von CoreOS nennt die Beweggründe seines Unternehmens für die Entwicklung einer sichereren Container-Alternative zu Docker:
"Aus Sicht der Sicherheit und Composability ist das Docker-Prozessmodell - bei dem alles über einen zentralen Daemon läuft - grundlegend fehlerhaft. Docker zu "reparieren" würde im Wesentlichen bedeuten, das Projekt neu zu schreiben, während das gesamte Gepäck der bestehenden Implementierung geerbt wird. "
Es ist erwähnenswert, dass Docker seitdem einige seiner kritischeren Sicherheitslücken behoben hat - zum Beispiel hat die Version 1.10 die Notwendigkeit beseitigt, Container als root auszuführen, was ein langjähriges Sicherheitsproblem unter den Anwendern beseitigt.
Hafenarbeiter
Ursprünglich darauf ausgerichtet, die Fähigkeiten von Linux Containers (LXC) zu erweitern, wurde Docker 2013 als Open-Source-Projekt entwickelt. Die Lösung des Unternehmens ist heute die führende Software-Containerisierungsplattform auf dem Markt. Mit LXC fungiert Docker als portable Container-Engine zum Verpacken von Anwendungen und Abhängigkeiten in Container, die auf jedem Linux-System einfach bereitgestellt werden können.

Da die Technologie von Docker auf LXC basiert, wird in Containern keine unabhängige Version des Betriebssystem-Kernels ausgeführt. Stattdessen werden alle Container auf einem bestimmten Host unter demselben Kernel ausgeführt, wobei andere Ressourcen pro Container isoliert sind. Dies ermöglicht ein hohes Maß an Isolation (wenn auch nicht so isoliert wie eine vollständige VM) mit geringerem Ressourcenaufwand.
CoreOS
CoreOS veröffentlichte rkt im Jahr 2014 als sicherere, interoperablere und offenere Alternative zu Docker. Wie bereits erwähnt, werden frühere Versionen von Docker als root ausgeführt, was dazu führt, dass Schwachstellen, die in Containern vorhanden sind, einem Angreifer möglicherweise Superuser-Rechte verleihen können. Eine weitere Stärke von CoreOS ist die offene Bedienbarkeit: rkt verwendet ein Open-Source-Containerformat namens appc, während Docker ein eigenes proprietäres Image-Format verwendet

Heutzutage konzentriert sich die Angebotssuite von CoreOS (z. B. Container Linux, Tectonic) auf den Bereich für die Verwaltung der Container-Infrastruktur. rkt konkurriert eindeutig mit Docker, aber die Angebote der beiden Unternehmen dürften sich als komplementäre Technologien empfehlen. Auch hier hat Docker große Fortschritte bei der Behebung vieler seiner wahrgenommenen Mängel gegenüber CoreOS gemacht. In Bezug auf die offene Bedienbarkeit wurde mit Docker 1.11 die Open Container Initiative (OCI) eingeführt, ein Standard, der von RedHat, Google, AWS, VMware und CoreOS unterstützt wird.
Side-by-Side-Scoring: Docker vs. CoreOS
1. Funktionsumfang
Wenn es um Container geht, sind Docker und CoreOS die dominierenden Akteure in diesem Bereich - beide Anbieter haben ihre Marktdominanz durch den Aufbau eines umfassenden Ökosystems leistungsfähiger Angebote zur Erweiterung ihrer Kern-Containertechnologien erreicht. CoreOS positioniert rkt als eine stärker sicherheitsorientierte Containerlösung; Darüber hinaus ist Container Linux von CoreOS ein Open-Source-Lightweight-Betriebssystem, das auf dem Linux-Kernel basiert. Für erweiterte Funktionen bietet die Datacenter-Lösung von Docker Container-Orchestrierung, Anwendungsmanagement und Sicherheit auf Unternehmensniveau.
| Hafenarbeiter | CoreOS |
| 5/5 | 5/5 |
2. Benutzerfreundlichkeit
Obwohl keine dieser Technologien für Anfänger konzipiert wurde, haben beide Anbieter einen großen Beitrag dazu geleistet, Container für ein breiteres IT-Publikum zugänglicher zu machen. So bietet Docker beispielsweise Kitematic als GUI-basierte Lösung für die Verwaltung von Docker-Containern an, während die Tectonic-Plattform von CoreOS die visuelle Verwaltung von CoreOS-Containern und -Clustern ermöglicht.
| Hafenarbeiter | CoreOS |
| 4/5 | 4/5 |
3. Unterstützung durch die Community
Sowohl Docker als auch CoreOS haben aufgrund ihrer prominenten, weit verbreiteten Open-Source-Angebote eine starke Fangemeinde aufgebaut. CoreOS unterhält einen aktiven Knotenpunkt für Community-Ressourcen. In ähnlicher Weise sind das Community-Portal und die Foren von Docker beliebte Self-Service-Ressourcen unter Docker-Benutzern.
| Hafenarbeiter | CoreOS |
| 5/5 | 5/5 |
4. Freigaberate
Die Produkte beider Anbieter wurden regelmäßig aktualisiert und veröffentlicht, obwohl die Container-Lösung von Docker - derzeit in Version 1.13 - ein älteres Angebot ist als CoreOS rkt. Letzteres wurde erst im Februar 2016 mit 1.0 veröffentlicht, während Docker 1.0 bereits Anfang 2013 auf den Markt kam.
| Hafenarbeiter | CoreOS |
| 5/5 | 5/5 |
5. Preisgestaltung und Support
Ein Überwachungssystem kann einen Konfigurationsfehler nicht beheben. Ein Konfigurationstestskript wird dies tun.
Sowohl Docker als auch CoreOS rkt sind kostenlose Open-Source-Angebote, wobei verschiedene kostenpflichtige Unternehmensangebote hauptsächlich aus Mehrwertdiensten und Support bestehen. Zu den kommerziellen Produkten von Docker gehören Docker Datacenter (ab 150 US-Dollar pro Monat/Instanz) für Container mit Anbietersupport hinter der Firewall und Docker Cloud (ab 7 US-Dollar pro Monat/5 Repositorys) für das Erstellen/Versenden privater Repositorys. Die kostenpflichtigen Optionen von CoreOS sind vollständig supportbezogen - zum Beispiel beginnt das Tectonic/Kubernetes-Supportangebot bei 3000 US-Dollar für 10 Server.
| Hafenarbeiter | CoreOS |
| 5/5 | 5/5 |
6. API und Erweiterbarkeit
CoreOS verwendet gRPC - ein hochleistungsfähiges, universelles Open-Source-RPC-Framework -, um seinen Angeboten eine RESTful-API zu verleihen. Um nicht zu übertreffen, bietet Docker einen vollständigen Satz von REST-APIs und SDKs, die es Entwicklern ermöglichen, jeden Aspekt des Container-Stacks von benutzerdefinierten Anwendungen aus zu steuern. Und sowohl CoreOS als auch Docker sind Open-Source-Projekte, bei denen der Quellcode vollständig verfügbar und auf GitHub gespeichert ist.
| Hafenarbeiter | CoreOS |
| 5/5 | 5/5 |
7. Integrationen von Drittanbietern
Der Docker Hub ist der in der Cloud gehostete Dienst des Unternehmens, der über 100.000 kostenlose Apps, öffentliche und private Registrierungen mit offiziellen Repositories von führenden Drittanbietern bietet - von Nginx und Ubuntu bis hin zu MongoDB und Redis. CoreOS ist in dieser Hinsicht eher DIY/Barebones, obwohl alle seine Projekte auf GitHub verfügbar sind.
| Hafenarbeiter | CoreOS |
| 5/5 | 3/5 |
8. Unternehmen, die es verwenden
Docker wird von vielen der führenden Unternehmen von heute verwendet: ADP, PayPal, Ebay, BBC News, Spotify, Lyft, Expedia, Groupon, GE Appliances, ING und Uber. In ähnlicher Weise wird CoreOS von prominenten Unternehmen wie CA Technologies, Verizon, Viacom, Salesforce.com, DigitalOcean verwendet, um nur einige zu nennen.
| Hafenarbeiter | CoreOS |
| 5/5 | 5/5 |
9. Lernkurve
Generell ist die Einarbeitung in den Umgang mit Containern keine Aufgabe für technisch Herausgeforderte; grundlegende Linux-Kenntnisse helfen dabei sicherlich. Beide Angebote haben steile Lernkurven, zumal sie aus mehreren Schichten beweglicher Teile bestehen. Glücklicherweise bieten sowohl Docker als auch CoreOS hervorragende Website-Ressourcen, um den Umgang mit ihren jeweiligen Technologien zu erlernen.
| Hafenarbeiter | CoreOS |
| 4/5 | 4/5 |
10. Sicherheitsbewertung
Trotz einer guten Sicherheitsbewertung von 760 wird die Ausfallsicherheit von Docker durch deaktiviertes DNSSEC und andere Sicherheitsprobleme beeinträchtigt. CoreOS erhält trotz Lücken auch eine akzeptable Sicherheitsbewertung von 675.
Anzeigetafel und Zusammenfassung
| Hafenarbeiter | CoreOS | |
| Funktionsumfang | 5/5 | 5/5 |
| Benutzerfreundlichkeit | 4/5 | 4/5 |
| Unterstützung durch die Community | 5/5 | 5/5 |
| Release-Rate | 5/5 | 5/5 |
| Preisgestaltung und Support | 5/5 | 5/5 |
| API und Erweiterbarkeit | 5/5 | 5/5 |
| Integrationen von Drittanbietern | 5/5 | 3/5 kg |
| Unternehmen , die es verwenden | 5/5 | 5/5 |
| Lernkurve | 4/5 | 4/5 |
| Sicherheitsbewertung | 760 | 675 |
| Gesamt | 4,7/5 | 4,5/5 |
Kurz gesagt, beide Container-Angebote haben ihre einzigartigen Vorteile - aber abgesehen von rkt und seinen schwindenden Sicherheitsvorteilen gegenüber Docker ergänzen sich die Angebote der beiden Anbieter größtenteils. Zum Beispiel ist es durchaus üblich, dass Unternehmen Docker-Container auf CoreOS mit seinem Flotten-Cluster-Manager bereitstellen. Und da die neu vorgeschlagene OCI-Spezifikation das Docker 2.2-Image-Format als Grundlage für gängige Container-Image-Typen verwendet, werden Docker und CoreOS sich angeblich weniger um das Duellieren mit Container-Standards kümmern und sich mehr auf den Aufbau einer umfassenden, interoperablen Suite von Tools für die Verwaltung des gesamten Container-Ökosystems konzentrieren.