Delay docker containers until drive is mounted

This commit is contained in:
Taylor Helsper 2019-11-29 21:29:55 -06:00
parent 1c807daec8
commit 172828bd3b
5 changed files with 63 additions and 43 deletions

View File

@ -0,0 +1,22 @@
# myNode Install Docker Images
# /etc/systemd/system/docker_images.service
[Unit]
Description=myNode Install Docker Images
Wants=mynode.service
After=mynode.service
[Service]
Type=simple
KillMode=control-group
ExecStart=/usr/bin/mynode_docker_images.sh
User=root
Group=root
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=mynode_docker_images
Restart=always
RestartSec=300
[Install]
WantedBy=multi-user.target

View File

@ -3,7 +3,8 @@
[Unit] [Unit]
Description=Netdata Description=Netdata
After=network.target Wants=mynode.service
After=mynode.service
[Service] [Service]
WorkingDirectory=/opt/mynode/docker WorkingDirectory=/opt/mynode/docker

View File

@ -0,0 +1,37 @@
#!/bin/bash
set -e
set -x
source /usr/share/mynode/mynode_config.sh
# Drive should be mounted, let's still wait a bit
sleep 60s
# Loop and check every 1 day
while [ 1 ]; do
# Upgrade WebSSH2
WEBSSH2_UPGRADE_URL=https://github.com/billchurch/webssh2/archive/v0.2.10-0.tar.gz
WEBSSH2_UPGRADE_URL_FILE=/home/bitcoin/.mynode/.webssh2_url
CURRENT=""
if [ -f $WEBSSH2_UPGRADE_URL_FILE ]; then
CURRENT=$(cat $WEBSSH2_UPGRADE_URL_FILE)
fi
if [ "$CURRENT" != "$WEBSSH2_UPGRADE_URL" ]; then
cd /opt/mynode
rm -rf webssh2
wget $WEBSSH2_UPGRADE_URL -O webssh2.tar.gz
tar -xvf webssh2.tar.gz
rm webssh2.tar.gz
mv webssh2-* webssh2
cd webssh2
mv app/config.json.sample app/config.json
docker build -t webssh2 .
echo $WEBSSH2_UPGRADE_URL > $WEBSSH2_UPGRADE_URL_FILE
fi
# Check again in a day
sleep 24h
done

View File

@ -250,27 +250,6 @@ if [ "$CURRENT" != "$BTCRPCEXPLORER_UPGRADE_URL" ]; then
echo $BTCRPCEXPLORER_UPGRADE_URL > $BTCRPCEXPLORER_UPGRADE_URL_FILE echo $BTCRPCEXPLORER_UPGRADE_URL > $BTCRPCEXPLORER_UPGRADE_URL_FILE
fi fi
# Upgrade WebSSH2
WEBSSH2_UPGRADE_URL=https://github.com/billchurch/webssh2/archive/v0.2.10-0.tar.gz
WEBSSH2_UPGRADE_URL_FILE=/home/bitcoin/.mynode/.webssh2_url
CURRENT=""
if [ -f $WEBSSH2_UPGRADE_URL_FILE ]; then
CURRENT=$(cat $WEBSSH2_UPGRADE_URL_FILE)
fi
if [ "$CURRENT" != "$WEBSSH2_UPGRADE_URL" ]; then
cd /opt/mynode
rm -rf webssh2
wget $WEBSSH2_UPGRADE_URL -O webssh2.tar.gz
tar -xvf webssh2.tar.gz
rm webssh2.tar.gz
mv webssh2-* webssh2
cd webssh2
mv app/config.json.sample app/config.json
docker build -t webssh2 .
echo $WEBSSH2_UPGRADE_URL > $WEBSSH2_UPGRADE_URL_FILE
fi
# Install ngrok for debugging # Install ngrok for debugging
if [ ! -f /usr/bin/ngrok ]; then if [ ! -f /usr/bin/ngrok ]; then
@ -290,6 +269,7 @@ systemctl enable firewall
systemctl enable invalid_block_check systemctl enable invalid_block_check
systemctl enable usb_driver_check systemctl enable usb_driver_check
systemctl enable https systemctl enable https
systemctl enable docker_images
systemctl enable glances systemctl enable glances
systemctl enable netdata systemctl enable netdata
systemctl enable webssh2 systemctl enable webssh2

View File

@ -350,27 +350,6 @@ if [ "$CURRENT" != "$LNDCONNECT_UPGRADE_URL" ]; then
echo $LNDCONNECT_UPGRADE_URL > $LNDCONNECT_UPGRADE_URL_FILE echo $LNDCONNECT_UPGRADE_URL > $LNDCONNECT_UPGRADE_URL_FILE
fi fi
# Install WebSSH2
WEBSSH2_UPGRADE_URL=https://github.com/billchurch/webssh2/archive/v0.2.10-0.tar.gz
WEBSSH2_UPGRADE_URL_FILE=/home/bitcoin/.mynode/.webssh2_url
CURRENT=""
if [ -f $WEBSSH2_UPGRADE_URL_FILE ]; then
CURRENT=$(cat $WEBSSH2_UPGRADE_URL_FILE)
fi
if [ "$CURRENT" != "$WEBSSH2_UPGRADE_URL" ]; then
cd /opt/mynode
rm -rf webssh2
wget $WEBSSH2_UPGRADE_URL -O webssh2.tar.gz
tar -xvf webssh2.tar.gz
rm webssh2.tar.gz
mv webssh2-* webssh2
cd webssh2
mv app/config.json.sample app/config.json
docker build -t webssh2 .
echo $WEBSSH2_UPGRADE_URL > $WEBSSH2_UPGRADE_URL_FILE
fi
# Install ngrok for debugging # Install ngrok for debugging
if [ ! -f /usr/bin/ngrok ]; then if [ ! -f /usr/bin/ngrok ]; then
@ -428,6 +407,7 @@ systemctl enable rtl
systemctl enable tor systemctl enable tor
systemctl enable invalid_block_check systemctl enable invalid_block_check
systemctl enable usb_driver_check systemctl enable usb_driver_check
systemctl enable docker_images
systemctl enable glances systemctl enable glances
systemctl enable netdata systemctl enable netdata
systemctl enable webssh2 systemctl enable webssh2