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