Markus Michalski FAQ

Watchdog: Docker Exec

Führt einen Befehl in einem Docker-Container über die Docker-API aus und wertet den Exit-Code aus. Typ docker_exec, Runner Dashboard oder Agent. Felder, Status.

English Version

Zurück zu den Check-Typen

Watchdog: Docker Exec

Der Check führt einen Befehl in einem laufenden Container aus und wertet nur den Exit-Code aus. Die Ausgabe des Befehls wird verworfen.

Eigenschaft Wert
Typ-Kennung docker_exec
Runner Dashboard oder Agent
Ziel in der E-Mail Container

Felder

Feld Schlüssel Standard Bedeutung
Container name container_name Pflicht. Exakter Container-Name
Command command Pflicht. Befehl, der im Container per sh -c ausgeführt wird, zum Beispiel php bin/console app:health
Timeout (seconds) timeout 10 Zeitlimit für Start, Ausführung und Auswertung, mindestens 1

Ablauf

Situation Status Meldung
Exit-Code 0 OK Exit code 0
Exit-Code ungleich 0 FAIL Exit code <n>
Container nicht gefunden, API-Fehler oder Zeitüberschreitung FAIL Docker API error: <Grund>
Socket nicht vorhanden UNKNOWN Docker socket not available at /var/run/docker.sock
Kein Container-Name UNKNOWN No container_name configured
Kein Befehl UNKNOWN No command configured

Der Befehl läuft im Container mit dessen Standardbenutzer. Die Erreichbarkeit einer Datenbank innerhalb des Docker-Netzes prüfst Du zum Beispiel, indem Du mysqladmin ping im Datenbank-Container ausführst.

Der Befehl stammt aus der Konfiguration des Checks und läuft über die Docker-API in jedem Container, den der Daemon kennt. Vergib den Zugriff auf die Oberfläche und auf den Docker-Socket entsprechend sparsam.

Die Voraussetzungen für den Socket entsprechen denen des Docker-Checks.