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.
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.