Docker ist ein weit verbreitetes Entwicklerwerkzeug, das das Erstellen, Versenden und Teilen von Anwendungspaketen vereinfacht. Seit der Veröffentlichung von Docker im Jahr 2013 hat es eine rasante Akzeptanz erfahren und wird von der Mehrheit der professionellen Softwareentwickler genutzt. In diesem Artikel erklären wir (Docker-Maintainer) es aus technischer Sicht, beginnend mit seinen Ursprüngen auf Linux und wie wir es anschließend neu aufgebaut haben, um macOS und Windows zu unterstützen, während es benutzerfreundlich bleibt. Docker hat viel Systemforschung in sein Ziel integriert, ein 'unsichtbarer' Entwicklerbegleiter zu werden, und wir diskutieren, wie Hypervisoren, Kernel-Namensräume und Technologien aus der Einwahl-Ära schwierige Integrationsprobleme gelöst haben, während die Benutzerbasis schnell wuchs. Das Docker-Projekt bleibt zudem im Kern eine der erfolgreichsten Open-Source-Entwicklergemeinschaften der letzten Zeit, mit einem einst monolithischen System, das jetzt in standardisierte und gut spezifizierte Komponenten unterteilt ist, die unabhängig entwickelt werden. Heute entwickeln sich die Arbeitsabläufe von Entwicklern schnell weiter mit agentischer Unterstützung und sensiblen Datensätzen, und wir diskutieren, wie Docker sich anpasst, um diese Nutzungsszenarien zu unterstützen.
Keshav et al. (Dienstag) haben diese Frage untersucht.