systemd-ngrok/install.sh
2022-02-08 16:22:48 +07:00

65 lines
1.2 KiB
Bash
Executable File

#!/usr/bin/env bash
# determine system arch
ARCH=
if [ "$(uname -m)" == 'x86_64' ]
then
ARCH=amd64
elif [ "$(uname -m)" == 'aarch64' ]
then
ARCH=arm64
elif [ "$(uname -m)" == 'i386' ] || [ "$(uname -m)" == 'i686' ]
then
ARCH=386
else
ARCH=arm
fi
if [ ! $(which wget) ]; then
echo 'Please install wget package'
exit 1
fi
if [ ! $(which git) ]; then
echo 'Please install git package'
exit 1
fi
if [ ! $(which unzip) ]; then
echo 'Please install zip package'
exit 1
fi
if (( $EUID != 0 )); then
echo "Please run as root"
exit 1
fi
if [ -z "$1" ]; then
echo "./install.sh <your_authtoken>"
exit 1
fi
if [ ! -e ngrok.service ]; then
git clone --depth=1 https://github.com/vincenthsu/systemd-ngrok.git
cd systemd-ngrok
fi
cp ngrok.service /lib/systemd/system/
mkdir -p /opt/ngrok
cp ngrok.yml /opt/ngrok
sed -i "s/<add_your_token_here>/$1/g" /opt/ngrok/ngrok.yml
cd /opt/ngrok
echo "Downloading ngrok for $ARCH . . ."
wget https://bin.equinox.io/c/4VmDzA7iaHb/ngrok-stable-linux-$ARCH.zip
unzip ngrok-stable-linux-$ARCH.zip
rm ngrok-stable-linux-$ARCH.zip
chmod +x ngrok
systemctl enable ngrok.service
systemctl start ngrok.service
echo "Done installing ngrok"
exit 0