Neue Docker-Version 1.2 mit restart-Policy und flexibleren Capabilities

Docker 1.2 ist fertig

| Autor / Redakteur: Thomas Drilling / Thomas Drilling

Docker
Docker (Bild: www.docker.io)

Die Entwickler von Docker Inc. haben eine neue Version 1.2 Ihrer Software zum Verpacken, Verteilen und Ausführungen von Apps in Linux Containern veröffentlicht, die unter anderem ein neue Policy-Funktion für Neustarts von Containern mitbringt.

Der Quellcode von Docker 1.2s steht ab sofort via Github zum Herunterladen zur Verfügung. Die neue Version 1.2 erlaubt es unter anderem, mit docker run ein --device-Flag zu verwenden, mit dessen Hilfe auch aus aus nicht im --privileged-Modus laufenden Containern heraus ein Zugriff auf Host-Geräte wie Laufwerke oder eine Soundkarte möglich ist, etwa mit …

--device=/dev/snd:/dev/snd.

Capabilities

Ferner kann der Docker-Admin mit den docker run- Optionen --cap-add= und --cap-drop= Capabilities feiner justieren und jedem Container damit spezielle Fähigkeiten zuordnen. Zuvor war dies nur über eine pauschale Whitelist möglicht. Mit der Option --privileged ist es dabei möglich, automatisch sämtliche Capabilities zu gewähren. Bind-Mounts von Geräten benötigen das Flag --priviledged mit der neuen --device-Option damit nicht mehr.

Restart-Flags

Zudem kennt Docker 1.2 mit dem neuen restart-Flag jetzt drei unterschiedliche Neustart-Optionen für abgestürzte Container. Per Default, also ohne spezielle Option, startet Docker einen abgestürzten Container nicht neu. Mit

run --restart=always

startet Docker den betreffenden Container neu, egal ob dieser aufgrund eines Fehlers oder regulär beendet wurde. Mit der Option --restart=on-failure

startet Docker den jeweiligen Container lediglich nach einem Absturz wieder neu. Dabei läßt sicht z.B. mit einem angehängten

:<X>

auch ein oberes Limit für die Anzahl der Neustartversuche setzen.

Sonstige Neuerungen

Außerdem lassen sich mit Docker 1.2 die Konfigurationsdateien /etc/hosts, /etc/hostname und /etc/resolv.conf in einem laufenden Container bearbeiten; allerdings übernimt docker build derartige Änderungen nicht. Neu ist auch, dass Dockers Proxy jetzt in einem separaten Prozess läuft. Dies verringert die Last für den Docker-Daemon. Darüber hinaus lassen sich laufende Container jetzt mit

rm -f

zersrören, auch wenn für einen regulären Stop docker stop zum Einsatz kommen sollte. Darüber hinaus bringt Docker 1.2 Verbesserungen beim Durchsuchen von privaten Registries und Unterstützung für Ipv6-Adressen beim --dns-Flag.