diff options
| author | Jonathan Dextraze <jonathan.dextraze@dexdo.com> | 2021-01-07 23:00:34 -0500 |
|---|---|---|
| committer | Jonathan Dextraze <jonathan.dextraze@dexdo.com> | 2021-01-07 23:00:34 -0500 |
| commit | a96cb3665013fede4eb947d1ae486a03e6366759 (patch) | |
| tree | f923c5ae7d521a13d08e578fff24a09986136ad3 | |
| parent | bd7300d11fd88e96e817329f6898ec93d396c05f (diff) | |
| download | BedrockConnect-a96cb3665013fede4eb947d1ae486a03e6366759.tar.gz BedrockConnect-a96cb3665013fede4eb947d1ae486a03e6366759.tar.bz2 BedrockConnect-a96cb3665013fede4eb947d1ae486a03e6366759.zip | |
install service script
| -rw-r--r-- | scripts/bedrock_connect.service | 18 | ||||
| -rw-r--r-- | scripts/install-service.sh | 60 |
2 files changed, 78 insertions, 0 deletions
diff --git a/scripts/bedrock_connect.service b/scripts/bedrock_connect.service new file mode 100644 index 0000000..6f8b99a --- /dev/null +++ b/scripts/bedrock_connect.service @@ -0,0 +1,18 @@ +[Unit] +Description=Bedrock Connect +After=syslog.target +After=network.target +#Uncomment line below if using MySQL +#Requires=mysql.service + +[Service] +RestartSec=2s +Type=simple +User=mcbc +Group=mcbc +WorkingDirectory=/home/mcbc +ExecStart=/usr/bin/java -jar BedrockConnect-1.0-SNAPSHOT.jar nodb=true +Restart=always + +[Install] +WantedBy=multi-user.target diff --git a/scripts/install-service.sh b/scripts/install-service.sh new file mode 100644 index 0000000..b91ce60 --- /dev/null +++ b/scripts/install-service.sh @@ -0,0 +1,60 @@ +#!/usr/bin/env bash + +SCRIPTS_DIR=$(dirname $0) + +# Requires root + +if [[ "$(whoami)" != "root" ]]; then + echo "Error: This script need to be ran as root (or using sudo)." + exit 1 +fi + +# Check OS and dependencies + +if [[ -f /etc/os-release ]]; then + source /etc/os-release + if [[ "$ID" == "ubuntu" || "$ID_LIKE" == "ubuntu" ]]; then + apt install -y curl jq + ADDUSER=useradd + elif [[ "$ID" == "centos" ]]; then + yum install -y epel-release + yum install -y curl jq + ADDUSER=adduser + else + echo "Unsupported OS" + exit 2 + fi +else + echo "Unsupported OS" + exit 2 +fi + +# Add user + +$ADDUSER \ + --system \ + --shell /bin/bash \ + --user-group \ + --password "$(dd bs=36 count=1 if=/dev/urandom 2>/dev/null | base64)" \ + --home /home/mcbc \ + --create-home \ + mcbc + +# Download latest + +curl "$(curl -s https://api.github.com/repos/Pugmatt/BedrockConnect/releases/latest | jq -r .assets[0].browser_download_url)" \ + -sLo /home/mcbc/BedrockConnect-1.0-SNAPSHOT.jar + +chown mcbc:mcbc /home/mcbc/BedrockConnect-1.0-SNAPSHOT.jar + +# Copy systemd script + +cp "$SCRIPTS_DIR/bedrock_connect.service" /etc/systemd/system/ + +# Reload, enable and start + +systemctl daemon-reload + +systemctl enable bedrock_connect + +systemctl start bedrock_connect |
