tpotce/installer/bin/dcres.sh

77 lines
1.8 KiB
Bash
Raw Normal View History

2015-01-28 16:08:34 +00:00
#!/bin/bash
########################################################
2015-12-08 14:47:39 +00:00
# T-Pot #
2015-01-28 16:08:34 +00:00
# Container and services restart script #
# #
2016-05-12 17:26:06 +00:00
# v16.10.0 by mo, DTAG, 2016-05-12 #
2015-01-28 16:08:34 +00:00
########################################################
2015-12-08 14:47:39 +00:00
myCOUNT=1
2015-01-28 16:08:34 +00:00
2015-12-08 14:47:39 +00:00
while true
do
if ! [ -a /var/run/check.lock ];
then break
fi
sleep 0.1
if [ "$myCOUNT" = "1" ];
then
echo -n "Waiting for services "
else echo -n .
fi
if [ "$myCOUNT" = "6000" ];
then
echo
echo "Overriding check.lock"
rm /var/run/check.lock
2015-12-08 14:47:39 +00:00
break
fi
myCOUNT=$[$myCOUNT +1]
done
2015-01-28 16:08:34 +00:00
myIMAGES=$(cat /etc/tpot/images.conf)
2015-01-28 16:08:34 +00:00
touch /var/run/check.lock
myUPTIME=$(awk '{print int($1/60)}' /proc/uptime)
if [ $myUPTIME -gt 4 ];
2015-01-28 16:08:34 +00:00
then
2015-08-07 20:32:15 +00:00
for i in $myIMAGES
2015-01-28 16:08:34 +00:00
do
2016-05-12 17:26:06 +00:00
systemctl stop $i
2015-01-28 16:08:34 +00:00
done
2016-03-09 13:05:06 +00:00
echo "### Waiting 10 seconds before restarting docker ..."
sleep 10
2015-01-30 20:40:01 +00:00
iptables -w -F
2016-05-12 17:26:06 +00:00
systemctl restart docker
2015-01-28 16:08:34 +00:00
while true
do
docker info > /dev/null
if [ $? -ne 0 ];
then
echo Docker daemon is still starting.
2015-08-07 20:32:15 +00:00
else
2015-01-28 16:08:34 +00:00
echo Docker daemon is now available.
break
fi
sleep 0.1
done
2016-03-09 13:05:06 +00:00
echo "### Docker is now up and running again."
echo "### Removing obsolete container data ..."
2015-08-07 20:32:15 +00:00
docker rm -v $(docker ps -aq)
2016-03-09 13:05:06 +00:00
echo "### Removing obsolete image data ..."
2016-11-09 16:51:58 +00:00
docker rmi $(docker images | grep "<none>" | awk '{print $3}')
2016-03-09 13:05:06 +00:00
echo "### Starting T-Pot services ..."
2015-01-28 16:08:34 +00:00
for i in $myIMAGES
do
2016-05-12 17:26:06 +00:00
systemctl start $i
2015-01-28 16:08:34 +00:00
done
sleep 5
2016-03-09 13:05:06 +00:00
else
echo "### T-Pot needs to be up and running for at least 5 minutes."
2015-01-28 16:08:34 +00:00
fi
rm /var/run/check.lock
/etc/rc.local