Monitoring script per container Docker

Se siamo alla ricerca di un modo per eseguire il monitoring dei container Docker possiamo affidarci a poche righe scritte in bash. L’esempio seguente non è dei più raffinati, ma è un’ottima base di partenza per successive evoluzioni.

Script bash per il monitoring di container Docker

Il seguente codice può essere copiato ed eseguito as it is. Ricordarsi solo di cambiare il nome del container alla riga 28.

				
					#!/bin/bash

echo "---------------------------------------------------------"
echo "---------------DOCKER CONTAINER MONITORING---------------"
echo "---------------------------------------------------------"

echo

RED='\033[0;31m'
GREEN='\033[0;32m'
NOCOLOR='\033[0m'

#BEGIN TEST DOCKER STATE
if docker info > /dev/null 2>&1; then
	echo -e "Docker service ---> [${GREEN}RUNNING${NOCOLOR}]"
else
  echo -e "Docker service ---> [${RED}STOPPED${NOCOLOR}]"
  echo
  echo "Tentativo di ripristino del servizio Docker"
  echo "Il sistema verrà riavviato in 15 secondi"
  sleep 15
  sudo reboot
  exit 1
fi
#END TEST DOCKER STATE

#BEGIN TEST CONTAINER RUNNING STATE
container_name="my-container-name"
sentinel=0
if [ "$( docker container inspect -f '{{.State.Status}}' $container_name )" == "running" ];
then
	echo -e "$container_name ---> [${GREEN}RUNNING${NOCOLOR}]"
elif [ "$( docker container inspect -f '{{.State.Status}}' $container_name )" == "restarting" ];
then
	echo -e "$container_name ---> [${RED}RESTARTING${NOCOLOR}]"
elif [ "$( docker container inspect -f '{{.State.Status}}' $container_name )" == "dead" ];
then
	echo -e "$container_name ---> [${RED}DEAD${NOCOLOR}]"
elif [ "$( docker container inspect -f '{{.State.Status}}' $container_name )" == "exited" ];
then
	echo -e "$container_name ---> [${RED}EXITED${NOCOLOR}]"
else
	echo -e "$container_name ---> [${RED}SERIOUSLY DAMAGED${NOCOLOR}]"
fi
#END TEST CONTAINER RUNNING STATE
				
			

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

Most Recent

Come modificare l’autore di commit precedenti

Anzitutto apriamo questo articolo precisando che modificare i commit passati è un’operazione sulla commit history di un repository e tale operazione può essere rischiosa. Questa

Come eliminare un Git remote branch

Mentre in questo articolo abbiamo trattato come eliminare un Git local branch, qui di seguito trattiamo come eliminare un Git remote branch. Anche in questo caso,

Partners