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
|
2016-02-12 21:47:19 +00:00
|
|
|
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 /data/images.conf)
|
|
|
|
|
|
|
|
touch /var/run/check.lock
|
|
|
|
|
|
|
|
myUPTIME=$(awk '{print int($1/60)}' /proc/uptime)
|
2016-02-12 21:47:19 +00:00
|
|
|
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 ..."
|
2016-02-12 21:47:19 +00:00
|
|
|
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
|
2016-02-12 21:47:19 +00:00
|
|
|
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
|
|
|
|
|
2015-02-05 13:01:49 +00:00
|
|
|
/etc/rc.local
|