From 866bd8ba288fda83f49e8ab37fe082885e883933 Mon Sep 17 00:00:00 2001 From: Lev Date: Tue, 9 Dec 2025 15:36:41 +0300 Subject: [PATCH] build --- API/main.py | 2 +- build.sh | 18 ++++++++++++++++++ configs/systemd/spectralvpn_api.service | 16 ++++++++++++++++ 3 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 build.sh create mode 100644 configs/systemd/spectralvpn_api.service diff --git a/API/main.py b/API/main.py index f5721b4..f5b50e1 100644 --- a/API/main.py +++ b/API/main.py @@ -6,7 +6,7 @@ import utils app = FastAPI() config = configparser.ConfigParser() -config.read('../configs/config/params.conf', encoding='utf-8') +config.read('params.conf', encoding='utf-8') args = [config["api"]["path"], config["api"]["host"], config["api"]["username"], config["api"]["password"], config.getint("api", "inbaund_id"), config["api"]["inbaund_url"]] class RegisterBody(BaseModel) : diff --git a/build.sh b/build.sh new file mode 100644 index 0000000..f262839 --- /dev/null +++ b/build.sh @@ -0,0 +1,18 @@ +#!/bin/bash +mkdir /etc/spectralvpn_api +cp API/* /etc/spectralvpn_api/ +cp configs/config/params.conf +python3 -m venv /etc/spectralvpn_api/.venv +/etc/spectralvpn_api/.venv/bin/pip -r requirments.txt + +mkdir /var/www/html/spectralvpn.ru +cp -r Frontend/* /var/www/html/spectralvpn.ru/ + +cp configs/nginx/* /etc/nginx/sites-available/ +ln -s /etc/nginx/sites-available/spectralvpn.ru.nginx /etc/nginx/sites-enabled/ +ln -s /etc/nginx/sites-available/spectralvpn.ru_http.nginx /etc/nginx/sites-enabled/ +ln -s /etc/nginx/sites-available/spectralvpn_api.nginx /etc/nginx/sites-enabled/ + +cp configs/systemd/* /etc/systemd/system/ +systemctl restart nginx.service +systemctl enable --now spectralvpn_api.service \ No newline at end of file diff --git a/configs/systemd/spectralvpn_api.service b/configs/systemd/spectralvpn_api.service new file mode 100644 index 0000000..eb515f6 --- /dev/null +++ b/configs/systemd/spectralvpn_api.service @@ -0,0 +1,16 @@ +[Unit] +Description=API SpectralVPN +After=network.target +Wants=network.target + +[Service] +User = root +WorkingDirectory=/etc/spectralvpn_api +Environment="PATH=/etc/spectralvpn_api/.venv/bin" +ExecStart=/etc/spectralvpn_api/.venv/bin/uvicorn main:app +Restart=always +RestartSec=3 +KillMode=control-group + +[Install] +WantedBy=multi-user.target \ No newline at end of file