Docker 0.7 lässt sich ohne gepatchten Linux-Kernel verwenden

Das früher unter dem Namen dotCloud bekannte Projekt zum Packen, Verteilen und Ausführen von Applikationen in einem Container steht nun in Version 0.7 bereit und bringt unter anderem Unterstützung für Linux.

In Pocket speichern vorlesen Druckansicht 2 Kommentare lesen
Lesezeit: 2 Min.
Von
  • Julia Schmidt

Die Entwickler hinter dem Docker-Projekt haben Version 0.7 ihrer quelloffenen Engine zum Erstellen von leichtgewichtigen, portablen Containern aus Applikationen veröffentlicht. Als größte Neuerung führen sie einen Storage-Treiber an, der Linuxnutzer in die Lage versetzt, Docker nun auch ohne gepatchten Linux-Kernel verwenden zu können. Der Einsatz von Patches war zuvor notwendig, da das Projekt viel mit dem Overlay-Dateisystem AUFS als Storage-Mechanismus für Copy-on-Write arbeitet, das nicht Teil des Standard-Kernels ist.

Derzeit stehen AUFS (ursprünglich kurz für Another Unionfs), VFS (Virtual File System) und DEVICEMAPPER mit dem neuen Treiber zur Verfügung, weitere sollen später folgen. Dabei ist jedoch zu beachten, dass die Treiber keine Daten der selben Maschine teilen können, sie allerdings Images generieren, die untereinander kompatibel sind. Eine weitere Neuerung in Docker 0.7 ist die Möglichkeit, via Offline Transfer Container-Images als eigenständige Pakete an das lokale Dateisystem zu exportieren, wofür die Kommandos docker save und docker load bereitstehen.

Darüber hinaus lässt sich nun über das Flag run -p festlegen, auf welches Interface bei der Portweiterleitung konkret umgeleitet werden oder ob der Port nicht generell nicht ansprechbar sein soll. Um die Sicherheit zu verbessern, haben die Entwickler im Zuge dieser Änderung auch zwei Anpassungen vorgenommen, die nicht rückwärtskompatibel sind: Zum einen sind die Ports beim Ausführen von docker run nun standardmäßig privat und müssen bei Bedarf mit dem -p-Flag freigegeben werden. Zum anderen ist die "<public>:<private>"-Syntax von EXPOSE auf deprecated gesetzt, "EXPOSE <private>" lässt sich allerdings weiterhin wie gewohnt verwenden.

Um Container miteinander kommunizieren zu lassen beziehungsweise, ihnen die Möglichkeit zu geben, einander ausfindig zu machen, stehen in Docker Links zur Verfügung. Mit dem Flag -icc=false lässt sich allerdings unterbinden, dass ein Container auf den anderen zugreift, ohne dass es explizit über einen Link erlaubt ist. Mehr Informationen zu allen Änderungen, zu denen auch die Option zählt, Container mit dem -name-Flag einen neuen Namen zu geben, finden sich in der Ankündigung. Das Projekt ist auch auf GitHub zu finden. (jul)