2016-08-06 22:06:31 +00:00
|
|
|
|
#/bin/bash
|
2017-05-01 19:03:27 +00:00
|
|
|
|
# Show current status of all running containers
|
2017-08-07 10:24:25 +00:00
|
|
|
|
myPARAM="$1"
|
|
|
|
|
myIMAGES="$(cat /etc/tpot/tpot.yml | grep -v '#' | grep container_name | cut -d: -f2)"
|
|
|
|
|
myRED="[1;31m"
|
|
|
|
|
myGREEN="[1;32m"
|
|
|
|
|
myBLUE="[1;34m"
|
|
|
|
|
myWHITE="[0;0m"
|
|
|
|
|
myMAGENTA="[1;35m"
|
|
|
|
|
|
|
|
|
|
function fuCONTAINERSTATUS {
|
|
|
|
|
local myNAME="$1"
|
|
|
|
|
local mySTATUS="$(/usr/bin/docker ps -f name=$i --format "table {{.Status}}" -f status=running -f status=exited | tail -n 1)"
|
|
|
|
|
myDOWN="$(echo "$mySTATUS" | grep -o -E "(STATUS|NAMES|Exited)")"
|
|
|
|
|
|
|
|
|
|
case "$myDOWN" in
|
|
|
|
|
STATUS)
|
|
|
|
|
mySTATUS="$myRED"DOWN"$myWHITE"
|
|
|
|
|
;;
|
|
|
|
|
NAMES)
|
|
|
|
|
mySTATUS="$myRED"DOWN"$myWHITE"
|
|
|
|
|
;;
|
|
|
|
|
Exited)
|
|
|
|
|
mySTATUS="$myRED$mySTATUS$myWHITE"
|
|
|
|
|
;;
|
|
|
|
|
*)
|
|
|
|
|
mySTATUS="$myGREEN$mySTATUS$myWHITE"
|
|
|
|
|
;;
|
|
|
|
|
esac
|
|
|
|
|
|
|
|
|
|
printf "$mySTATUS"
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function fuCONTAINERPORTS {
|
|
|
|
|
local myNAME="$1"
|
|
|
|
|
local myPORTS="$(/usr/bin/docker ps -f name=$i --format "table {{.Ports}}" -f status=running -f status=exited | tail -n 1 | sed s/","/",\n\t\t\t\t\t\t\t"/g)"
|
|
|
|
|
|
|
|
|
|
if [ "$myDOWN" != "(STATUS|NAMES|Exited)" ];
|
|
|
|
|
then
|
|
|
|
|
printf "$myBLUE$myPORTS$myWHITE"
|
|
|
|
|
fi
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
function fuGETSYS {
|
|
|
|
|
printf "========| System |========\n"
|
|
|
|
|
printf "%+10s %-20s\n" "Date: " "$(date)"
|
|
|
|
|
printf "%+10s %-20s\n" "Uptime: " "$(uptime | cut -b 2-)"
|
|
|
|
|
printf "%+10s %-20s\n" "CPU temp: " "$(sensors | grep 'Physical' | awk '{ print $4" " }' | tr -d [:cntrl:])"
|
|
|
|
|
echo
|
2017-04-19 12:22:51 +00:00
|
|
|
|
}
|
|
|
|
|
|
2016-08-15 05:46:57 +00:00
|
|
|
|
while true
|
|
|
|
|
do
|
2017-08-07 10:24:25 +00:00
|
|
|
|
fuGETSYS
|
|
|
|
|
printf "%-19s %-36s %s\n" "NAME" "STATUS" "PORTS"
|
2016-08-29 23:24:25 +00:00
|
|
|
|
for i in $myIMAGES; do
|
2017-08-07 10:24:25 +00:00
|
|
|
|
myNAME="$myMAGENTA$i$myWHITE"
|
|
|
|
|
printf "%-32s %-49s %s" "$myNAME" "$(fuCONTAINERSTATUS $i)" "$(fuCONTAINERPORTS $i)"
|
|
|
|
|
echo
|
|
|
|
|
if [ "$myPARAM" = "vv" ];
|
2016-08-29 23:24:25 +00:00
|
|
|
|
then
|
2017-08-07 10:24:25 +00:00
|
|
|
|
/usr/bin/docker exec -t "$i" /bin/ps awfuwfxwf | egrep -v -E "awfuwfxwf|/bin/ps"
|
2016-08-29 23:24:25 +00:00
|
|
|
|
fi
|
|
|
|
|
done
|
2017-08-07 10:24:25 +00:00
|
|
|
|
if [[ $myPARAM =~ ^([1-9]|[1-9][0-9]|[1-9][0-9][0-9])$ ]];
|
2016-08-29 23:24:25 +00:00
|
|
|
|
then
|
2017-08-07 10:24:25 +00:00
|
|
|
|
sleep "$myPARAM"
|
2016-08-29 23:24:25 +00:00
|
|
|
|
else
|
|
|
|
|
break
|
|
|
|
|
fi
|
2016-08-15 05:46:57 +00:00
|
|
|
|
done
|