init: add installer script and systemctl service file
This commit is contained in:
parent
60b4e07f0c
commit
2c6b24b0fd
30
install-web.sh
Executable file
30
install-web.sh
Executable file
@ -0,0 +1,30 @@
|
||||
#!/bin/bash
|
||||
|
||||
if [[ $EUID -ne 0 ]]; then
|
||||
echo "Ты ридмишку не читал что ли? Сказано же русским языком: \"ПОД РУТОМ запускать\"!" >&2
|
||||
exit 1
|
||||
fi
|
||||
|
||||
SCRIPT_DIR=$(cd -- "$(dirname -- "${BASH_SOURCE[0]}")" &>/dev/null && pwd)
|
||||
|
||||
echo "Идёт установка..." &&
|
||||
|
||||
echo "Чудодейство конфигурации..." &&
|
||||
mkdir -p /etc/skazanull &&
|
||||
cp $SCRIPT_DIR/web/web.conf.yml /etc/skazanull/web.conf.yml &&
|
||||
chmod 640 /etc/skazanull/web.conf.yml &&
|
||||
chown www-data:www-data /etc/skazanull/web.conf.yml &&
|
||||
|
||||
echo "Сборка..." &&
|
||||
go build -C $SCRIPT_DIR/web -o $SCRIPT_DIR/bin/skazanull $SCRIPT_DIR/web/cmd/main.go &&
|
||||
mkdir -p /opt/skazanull/bin &&
|
||||
cp $SCRIPT_DIR/bin/skazanull /opt/skazanull/bin/skazanull &&
|
||||
chmod 755 /opt/skazanull/bin/skazanull &&
|
||||
|
||||
echo "Установка сервиса в systemctl..." &&
|
||||
cp $SCRIPT_DIR/web/snw.service /etc/systemd/system &&
|
||||
chmod 644 /etc/systemd/system/snw.service &&
|
||||
systemctl daemon-reload &&
|
||||
systemctl start snw &&
|
||||
|
||||
echo "СказаНулл успешно установлен."
|
||||
11
web/snw.service
Normal file
11
web/snw.service
Normal file
@ -0,0 +1,11 @@
|
||||
[Unit]
|
||||
Description=SkazaNull Web
|
||||
After=postgresql.service
|
||||
|
||||
[Service]
|
||||
ExecStart=/opt/skazanull/bin/skazanull
|
||||
User=www-data
|
||||
TimeoutStopSec=10
|
||||
|
||||
[Install]
|
||||
WantedBy=multi-user.target
|
||||
Loading…
x
Reference in New Issue
Block a user