Docker Container können mittels CLI, GUI und API verwaltet werden. In dieser Anleitung zeigen wir das Management von Docker Containern mittels API.

Vorraussetzungen:


Schritt 1: Docker API freischalten

Auf einem Server mit Docker ist die Docker API standardmäßig deaktiviert. Um diese freischalten zu können, muss eine Konfigurationsdatei angepasst werden.

nano /lib/systemd/system/docker.service

In dieser Datei gibt es eine Zeile, die wie folgt aussieht:

ExecStart=/usr/bin/dockerd -H fd:// --containerd=/run/containerd/containerd.sock

In dieser Zeile muss folgender Wert hinzugefügt werden: -H=tcp://0.0.0.0:5555

Damit wird die Docker API über Port 5555 öffentlich erreichbar gemacht. Die Zeile sollte nun wie folgt aussehen:

ExecStart=/usr/bin/dockerd -H fd:// -H=tcp://0.0.0.0:5555 --containerd=/run/containerd/containerd.sock

Schritt 2: Docker neustarten

Nachdem die Konfiguration angepasst wurde, muss der Docker Service neugestartet werden:

systemctl daemon-reload

service docker restart

Schritt 3: Testen der Docker API

Wenn es keine Fehlermeldungen gibt, sollte die Docker API nun erreichbar sein und kann in folgendem getestet werden. Sollten auf dem Server noch keine Docker Container laufen, empfiehlt es sich ein paar Beispielservices aufzusetzen, um die Funktionalitäten testen zu können. Wenn bereits ein paar Docker Container laufen, kann man mittels folgendem API Call eine Übersicht der laufenden Container erhalten:

curl http://127.0.0.1:5555/containers/json

Eine detaillierte Beschreibung der möglichen API Befehle sind unter folgendem Link zu finden:

Docker Engine API v1.41 Reference
Reference documentation and Swagger (OpenAPI) specification for the vv1.41 version of the API served by Docker Engine.