-
Notifications
You must be signed in to change notification settings - Fork 0
/
install.sh
41 lines (33 loc) · 1.1 KB
/
install.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
#!/bin/bash
# Nastavení proměnných
REPO_URL="https://github.com/m-klecka/123smartbms-display/archive/refs/heads/main.zip"
INSTALL_DIR="/home/michael/smartbms-display"
SERVICE_NAME="smartbms.service"
# Stažení a rozbalení projektu
echo "Stahuji projekt..."
wget -O main.zip $REPO_URL
unzip main.zip -d $INSTALL_DIR
cd $INSTALL_DIR
# Vytvoření Python environmentu a instalace potřebných balíčků
echo "Vytvářím Python environment..."
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt flask serial_asyncio
# Nastavení systemd služby
echo "Vytvářím systemd službu..."
echo "[Unit]
Description=SmartBMS Webserver
After=network.target
[Service]
User=root
WorkingDirectory=$INSTALL_DIR
ExecStart=$INSTALL_DIR/venv/bin/python3 $INSTALL_DIR/smartbms.py
Restart=always
[Install]
WantedBy=multi-user.target" > /etc/systemd/system/$SERVICE_NAME
# Načtení nové služby a její povolení
systemctl daemon-reload
systemctl enable $SERVICE_NAME
systemctl start $SERVICE_NAME
# Ukončení
echo "Instalace dokončena. SmartBMS server běží jako služba pod názvem '$SERVICE_NAME'."