So überwachen Sie den Ausführungsstatus eines Docker-Container-Shell-Skripts

So überwachen Sie den Ausführungsstatus eines Docker-Container-Shell-Skripts

Szenario

Das Unternehmensprojekt wird in Docker bereitgestellt. Aus unbekannten Gründen stoppt der Container gelegentlich. Es ist erforderlich, ein Skript zu schreiben, um den Ausführungsstatus des Containers zu überwachen. Wenn der Container stoppt, starten Sie den Container erneut.

Shell-Skript

#!/bin/bash
# Übergeben Sie den Containernamen containerName=$1
aktuelleZeit=`Datum +"%J-%m-%d %H:%M:%S"`
# Überprüfen Sie, ob der Prozess existiert=`docker inspect --format '{{.State.Running}}' ${containerName}`
wenn [ "${exist}" != "true" ]; dann
 Docker starten ${ContainerName}
 # Aufzeichnen echo "${currTime} Docker-Container neu starten, Containername: ${containerName}" >> /mnt/xvde1/ms_ctynyd/scripts/wbwf_monitor.log
 
fi

Geplante Aufgaben crontab

crontab -e zum Bearbeiten geplanter Linux-Aufgaben

# Docker 8081-Container überwachen*/1 * * * * sh /mnt/xvde1/ms_ctynyd/scripts/wbwf_monitor.sh server_wbwf_wbwf-app_1
# Docker 7081-Container überwachen*/1 * * * * sh /mnt/xvde1/ms_ctynyd/scripts/wbwf_monitor.sh server_hb_hb-test-app_1

Ergänzung: Shell-Skript ermittelt, ob ein Dienst läuft

Shell-Skript zum Ermitteln, ob ein Dienst aktiviert ist

Das Skript lautet wie folgt:

#!/bin/bash
#Überprüfen Sie den Dienststatus, um zu sehen, ob er installiert ist. Lesen Sie -p "Bitte geben Sie den zu testenden Dienst ein:" SERVICE
grep $SERVICE &> /dev/null
wenn [ $? -eq 0 ]
Dann
  echo "$SERVICE-Dienst wurde gestartet!"
anders
  rpm -q $SERVICE &> /dev/null
 
  wenn [ $? -eq 0 ]
  Dann
 echo "Der Dienst $SERVICE wurde installiert und wird gestartet …"
    Dienst $SERVICE starten
  anders
 echo "Der Dienst ist nicht installiert!"
 fi
fi

Die Ergebnisse sind wie folgt:

Das Obige ist meine persönliche Erfahrung. Ich hoffe, es kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden. Sollten dennoch Fehler oder unvollständige Überlegungen vorliegen, freue ich mich über eine Korrektur.

Das könnte Sie auch interessieren:
  • Docker ermöglicht den nahtlosen Aufruf von Shell-Befehlen zwischen Container und Host
  • So führen Sie Linux-Shell-Befehle in Docker aus
  • Detaillierte Erläuterung der Startreihenfolge des Docker-Containers mithilfe eines Shell-Skripts
  • Führen Sie die Shell oder das Programm im Docker-Container auf dem Host aus.
  • Verwenden Sie Shell-Skripte, um Docker-Dienste stapelweise zu starten und zu stoppen
  • Shell-Skript erstellt Docker halbautomatische Kompilierungs-, Verpackungs- und Freigabeanwendungsvorgänge

<<:  Webentwicklungs-Tutorial: domänenübergreifende Lösung – detaillierte Erläuterung

>>:  Der Unterschied zwischen HTML-Block-Level-Tags und Inline-Tags

Artikel empfehlen

Eine Aufzeichnung der Fallstricke des Lebenszyklus von WeChat-Applet-Komponenten

Der Komponentenlebenszyklus ist normalerweise der...

Lernbeispiel für den Nginx Reverse Proxy

Inhaltsverzeichnis 1. Reverse-Proxy-Vorbereitung ...

Node.js implementiert die Wiederaufnahme von Haltepunkten

Inhaltsverzeichnis Lösungsanalyse Scheibe Lebensl...

Detaillierte Erklärung zu Javascript-Dateien und Blobs

Inhaltsverzeichnis Datei() Grammatik Parameter Be...

Das Vue-Projekt realisiert Anmelde- und Registrierungseffekte

In diesem Artikelbeispiel wird der spezifische Co...

Häufige Fehler und Gründe für MySQL-Verbindungsfehler

=================================================...

Miniprogramm Benutzerdefinierte TabBar-Komponentenkapselung

In diesem Artikelbeispiel wird der spezifische Co...

Der Unterschied zwischen HTML-Name-ID und Klasse_PowerNode Java Academy

Name Geben Sie einen Namen für das Tag an. Format...

Eine vollständige Anleitung zu CSS-Stilattributen css() und width() in jQuery

Inhaltsverzeichnis 1. Grundlegende Verwendung von...