Open-Source-Projekt
moby/moby avatar
moby/moby

Moby: Bausteine für Container-Engines und Docker-nahe Systeme

Das Moby-Projekt – ein Gemeinschaftsprojekt für das Container-Ökosystem zum Aufbau Container-basierter Systeme.

72.106 Sterne19.232 ForksGoApache-2.0

Auf einen Blick

Was ist das?
Ein Open-Source-Projekt von Docker, das modulare Komponenten und ein Framework zum Zusammenstellen eigener containerbasierter Systeme bereitstellt.
Für wen ist es gedacht?
Geeignet ist moby für den konkreten Einsatzbereich, den moby/moby im README beschreibt. Nicht belegt sind Fähigkeiten außerhalb dieser Dokumentation.
Darf ich es kommerziell nutzen?
Ja. Apache-2.0 ist eine freizügige Lizenz: Sie dürfen darauf aufbauende Software nutzen, verändern und verkaufen, solange Sie die Urheberrechts- und Lizenzhinweise beibehalten.
Wird es noch gepflegt?
Ja. Das Repository hat innerhalb des letzten Tages neue Commits erhalten.
In welcher Sprache ist es geschrieben?
Hauptsächlich Go, laut der Sprachstatistik von GitHub.

Die Antworten beruhen auf den GitHub-Daten des Projekts (zuletzt abgeglichen am 15. September 2026) und auf unserer Analyse. Sie sind keine Rechtsberatung.

TIEFGEHENDE OPEN-SOURCE-ANALYSE

Was Moby ist und was nicht

Moby ist ein von Docker gegründetes Open-Source-Projekt zur Ermöglichung und Beschleunigung der Software-Containerisierung. Es beschreibt sich selbst als „Lego-Set" aus Toolkit-Komponenten und bietet Bausteine für Container-Build-Tools, eine Container-Registry, Orchestrierungswerkzeuge und eine Laufzeit sowie ein Framework, um sie zu eigenen containerbasierten Systemen zusammenzusetzen. Das README stellt klar, dass Moby nicht für Personen gedacht ist, die ein kommerziell unterstütztes System suchen, sondern für Ingenieure, Integratoren und Enthusiasten, die mit Container-Technologie experimentieren, sie modifizieren und verbessern möchten. Das Projekt zielt nicht auf Endbenutzer ab; Dokumentation und APIs richten sich an Entwickler, die Werkzeuge bauen, nicht an direkte Container-Nutzer.

Prinzipien, die das Projekt leiten

Das README listet vier Prinzipien auf, die die Entwicklung von Moby leiten. Modularität bedeutet, dass das Projekt viele Komponenten mit klar definierten Funktionen und APIs enthält, die zusammenarbeiten. „Batterien enthalten, aber austauschbar" bedeutet, dass Moby genügend Komponenten liefert, um voll ausgestattete Containersysteme zu bauen, aber seine modulare Architektur es erlaubt, die meisten Komponenten durch alternative Implementierungen zu ersetzen. Brauchbare Sicherheit bedeutet, dass das Projekt sichere Standardeinstellungen bieten will, ohne die Benutzerfreundlichkeit zu beeinträchtigen. Entwicklerfokus bedeutet, dass die APIs funktional und nützlich für den Bau leistungsfähiger Werkzeuge sein sollen, wobei Dokumentation und UX auf Entwickler ausgerichtet sind, nicht auf Endbenutzer. Diese Prinzipien prägen die Designentscheidungen des Projekts und seine Offenheit für die Richtung der Community.

Zielgruppe und Beziehung zu Docker

Moby richtet sich an Ingenieure, Integratoren und Enthusiasten, die Systeme auf Basis von Containern bauen möchten. Es ist das Upstream für das Docker-Produkt, d.h. Docker verpflichtet sich, Moby als Grundlage für Docker Engine und andere Produktkomponenten zu verwenden. Andere Projekte werden ebenfalls ermutigt, Moby als Upstream zu nutzen und seine Komponenten auf verschiedene Weise wiederzuverwenden. Das Projekt ist kein Ort für Support- oder Feature-Anfragen für Docker-Produkte; es existiert, damit Mitwirkende an Open-Source-Code arbeiten. Releases werden nur nach besten Kräften von Maintainern, Community und Nutzern unterstützt. Für kommerziellen Support verweist das README auf Docker Desktop und Mirantis Container Runtime als geeignete Produkte.

Go-Module und Release-Tags

Ab Docker v29, veröffentlicht im November 2025, ist das Go-Modul github.com/docker/docker veraltet und wird nicht mehr aktualisiert. Die unterstützten öffentlichen Go-Module sind github.com/moby/moby/client, der Go-Client für die Docker-Engine-API, und github.com/moby/moby/api, das zwischen Client und Server gemeinsam genutzte API-Typen enthält. Das Root-Modul github.com/moby/moby/v2 ist die Codebasis für den Bau von Container-Engines wie Docker Engine. Es erzeugt nur Binärdateien und ist nicht dafür gedacht, als Go-Bibliothek importiert zu werden, ohne API-Stabilitätsgarantien. Docker-Engine-Releases werden mit einem docker- Präfix getaggt, z.B. docker-v29.0.0. Die Module client und api haben eigene, unabhängige Versionstags, z.B. client/v1.x.x und api/v1.x.x. Diese docker- Tags dürfen nicht über go get verwendet werden.

Migration von github.com/docker/docker

Das README enthält Migrationsanweisungen für den Wechsel von den veralteten Importpfaden github.com/docker/docker. Ersetzen Sie Importe von github.com/docker/docker/client durch github.com/moby/moby/client und github.com/docker/docker/api/types durch github.com/moby/moby/api/types. Es warnt, dass v29 viele bahnbrechende API-Änderungen enthält, einschließlich Optionsstrukturen, umbenannter Methoden und verschobener Typen. Die vollständige Liste der Go-SDK-Änderungen finden Sie in den Versionshinweisen zu v29.0.0. Entwickler sollten diese Hinweise vor dem Upgrade prüfen, da die Änderungen nicht auf Importpfade beschränkt sind.

Lizenz und rechtliche Hinweise

Moby ist unter der Apache License, Version 2.0, lizenziert, wie im README angegeben und durch den Lizenztext bestätigt. Die Lizenz gewährt eine unbefristete, weltweite, nicht exklusive, gebührenfreie, lizenzgebührenfreie Urheberrechtslizenz zur Vervielfältigung, Erstellung abgeleiteter Werke, öffentlichen Ausstellung und Aufführung, Unterlizenzierung und Verbreitung des Werks. Sie gewährt außerdem unter bestimmten Bedingungen eine Patentlizenz, die endet, wenn eine Patentklage eingereicht wird. Das README fügt einen rechtlichen Hinweis hinzu: Die Nutzung und Übertragung von Moby kann Beschränkungen durch die US-Regierung und andere Regierungen unterliegen, und es liegt in der Verantwortung des Nutzers, die Einhaltung sicherzustellen. Der Lizenzauszug enthält keine Gewährleistungs- oder Supportbedingungen; der vollständige Lizenztext ist im Repository verfügbar.

moby: dokumentierter Einstieg

Der konkrete Einstieg in moby/moby lässt sich an go test ./... festmachen. Dabei sind die im README genannten Eingaben, Ausgaben und Abhängigkeiten zu erfassen. Ein erfolgreicher Lauf dieses Befehls zeigt nur, dass der dokumentierte Pfad in der geprüften Umgebung funktioniert; Aussagen über andere Plattformen oder Lastprofile sind daraus nicht abzuleiten.

moby: Grenzen der Aussage

Die Quelle beschreibt moby aus der Perspektive des Repositorys. Nicht jede Frage zu Betrieb, Skalierung, Fehlerbehandlung oder Aktualität wird beantwortet. Deshalb sollten die genannten Dateien, Konfigurationswerte und Schnittstellen vor einer Einführung genau gegen den eigenen Anwendungsfall gehalten werden. Fehlt eine Angabe, bleibt sie offen.

Redaktionelles Fazit

Geeignet ist moby für den konkreten Einsatzbereich, den moby/moby im README beschreibt. Nicht belegt sind Fähigkeiten außerhalb dieser Dokumentation. Vor einer Entscheidung sollte go test ./... mit einer passenden Testeingabe ausgeführt und die projektspezifische Ausgabe geprüft werden; erst danach lassen sich Abhängigkeiten, Rechte und die Apache-2.0 Lizenz einordnen.

Offizielle Quellen

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Community-Notizen

Community-Notizen