Docker 1.11 integriert OCI-Standards runC und containerD

Die Bemühungen der Open Container Initiative zur Entwicklung einer portablen Laufzeitumgebung und eines Container-Daemons haben in der neuen Version der Docker-Infrastruktur Einzug gehalten.

In Pocket speichern vorlesen Druckansicht
Docker 1.11 integriert OCI-Standards runC und containerD
Lesezeit: 2 Min.
Von
  • Alexander Neumann

Mit der Version 1.11 wird die Docker-Plattform an zentraler Stelle konform zu den Vorgaben der Open Container Initiative (OCI). Diese bemüht sich um die Entwicklung offener Industriestandards für Container-Formate und deren Laufzeitumgebungen. Die Annäherung an den Container-Standard erfolgt über die Integration von runC und containerD, die beide im Rahmen der von der Linux Foundation geführten konsortialen Initiative spezifiziert werden.

Ziel von runC ist es, standardisierte Container überall lauffähig zu machen. Die portable Laufzeitumgebung kann mit Funktionen wie vollständiger Unterstützung für Linux-Namensräume und Windows-10-Container, Möglichkeiten zur Live-Migration und einem formal festgeschriebenen Konfigurationsformat aufwarten. runC ist mit der Absicht entstanden, eventuelle Abhängigkeiten zur initialen Docker-Plattform aufzulösen. containerD steht hingegen für einen Container-Daemon, über den die Docker Engine mit den runC-Instanzen kommuniziert, in denen die einzelnen Anwendungs-Container betrieben werden.

Als Vorteil der neuen zerteilten Architektur wird die Möglichkeit gesehen, den Daemon aktualisieren zu können, ohne dass man die Container im Betrieb schließen muss. Außerdem mag sie zu spürbaren Performanceverbesserungen bei Anwendungen mit sehr vielen Containern führen.

Die Einbindung der beiden neuen Komponenten hat offenbar einiges an Umbauten erfordert, weshalb sie die zentrale Neuerungen von Docker 1.11 sind. So blieb nur wenig Zeit für weitere größere Features, also etwa die Codebasis zu überarbeiten und sich schon länger offener Bugs anzunehmen. Kleinere Änderungen stellen die Einführung von DNS Round Robin Load Balancing, die Service Discovery von IPv6, experimenteller VLAN-Support, Yubikey Hardware Image Signing, Labels für Netzwerke und Volumes sowie ein offenbar besserer Umgang mit Festplattenplatz dar. Zugleich haben die Entwickler Komponenten aus dem eigenen Ökosystem wie Compose (Version 1.7), Swarm (v1.2), Machine (v0.7) und Registry (v2.4) aktualisiert.

Mit Docker lassen sich Anwendungen samt ihrer Abhängigkeiten in sogenannten Containern verpacken, in denen sie sich später leicht weitergeben und ausführen lassen. Im Vergleich zu virtuellen Maschinen sind die Docker-Container sparsamer im Umgang mit Ressourcen und können schneller starten. Nachdem die gerade mal drei Jahre alten Docker-Container sehr schnell das Interesse vieler Entwickler geweckt hatten, liegt mittlerweile das Bestreben darin, auch den Anforderungen der restlichen Unternehmens-IT entsprechen zu können. (ane)