Eine Einführung in Docker

By | 6. März 2017

Docker ist eine Open-SourceSoftware, die dazu verwendet werden kann, Anwendungen mithilfe von Betriebssystemvirtualisierung in Containern zu isolieren. Dies vereinfacht einerseits die Bereitstellung von Anwendungen, weil sich Container, die alle nötigen Pakete enthalten, leicht als Dateien transportieren und installieren lassen. (Quelle: Wikipedia)

Die Entwicklung von Docker ist mittlerweile soweit voran geschritten, dass die Software unter allen großen Linux Distributionen bequem über die jeweilige Paketverwaltung installiert werden kann. Auf der Projekthomepage ist dies im Detail beschrieben: Install Docker Engine. Auch für Mac und Windows gibt es ausführliche Anleitungen.

Wie funktioniert Docker?

Im Grunde ist es ganz einfach und ähnlich einem Versionsverwaltungstool. Am Amfang steht immer ein sogenanntes Image. Wir können uns dies ähnlich einer VM vorstellen, nur wesentlich ressourcensparender. Es gibt unzählige von der Community bereitgestellte Images im Docker Hub. Ein solches lässt sich bequem über die integrierte Suche finden. Um beispielsweise ein Ubuntu Image zu suchen, tippe einfach:

docker search ubuntu

Als Resultat erscheint eine Liste von Images mit dem Suchbegriff im Namen. Eine solche Liste könnte wie folgt aussehen:

NAME                              DESCRIPTION      STARS     OFFICIAL   AUTOMATED
ubuntu                            Ubuntu is s...   3808      [OK]       
ubuntu-upstart                    Upstart is ...   61        [OK]       
torusware/speedus-ubuntu          Always updated   25                   [OK]
rastasheep/ubuntu-sshd            Dockerized SSH   24                   [OK]
...

Das gewünschte Image kann nun mit dem pull Kommando heruntergeladen werden.

docker pull ubuntu

Wollen wir den erfolgreichen Download verifizieren, so genügt es die Liste der lokalen Images anzuzeigen.

docker images

Das gerade heruntergeladene Image sollte nun in der Liste auftauchen.

REPOSITORY      TAG         IMAGE ID        CREATED         SIZE
ubuntu          latest      c5f1cc21c91b    2 days ago      121.4 MB

Wollen wir mit diesem Image arbeiten, so müssen wir einen Container erstellen.

docker run ubuntu

Laufende Container lassen sich mit dem ps Befehl anzeigen.

docker ps
CONTAINER ID    IMAGE       COMMAND         CREATED         STATUS          PORTS               NAMES
c2c7acc112da    ubuntu      "/bin/bash"     2 hours ago     Up 2 hours                          white_pillow

Wollen wir uns alle (auch beendete Container) anzeigen lassen, so fügen wir die Option -a an den Befehl an.

docker ps -a

Alles, was nun passiert, wird in einer Art History gespeichert. Ähnlich einem Versionsverwaltungstool können wir nun Änderungen vornehmen und diese mit einem Kommentar versehen speichern. Es wird dann ein neues Image erstellt, welches die Änderungen enthält.

Änderungen lassen sich mit dem Befehl inspect anzeigen.

docker inspect -f c2c7acc112da

Ein neues Image wird dann mit dem commit Befehl erzeugt.

docker commit -m "nginx hinzugefügt" c2c7acc112da ubuntu_nginx

Wollt ihr ein Image löschen, so geschieht dies mit dem rmi Befehl.

docker rmi ubuntu_nginx

Dies war ein kurzer Überblick für den Einstieg in die „Containerwelt“. Wer tiefer einsteigen möchte, sollte sich die wirklich gute Dokumentation zu Docker anschauen. Es folgen einige weiterführende Themen zur Vertiefung für den interessierten Leser.

 

Vielen Dank für das Lesen des Beitrags! Ich würde mich freuen, wenn du den Beitrag über die sozialen Netzwerke teilen würdest und Blog About Tech folgst.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.