2.1 KiB
2.1 KiB
StaySense Deployment Guide (Linux + Nginx)
1. Voraussetzungen
- Ubuntu/Debian Server mit sudo
- Domain (optional, empfohlen)
- Python 3.10+
- Nginx
- systemd
Install:
sudo apt update
sudo apt install -y python3 nginx
2. Code bereitstellen
sudo mkdir -p /opt/staysense
sudo chown -R $USER:$USER /opt/staysense
git clone <REPO_URL> /opt/staysense
3. Initialisierung
cd /opt/staysense/backend
python3 -c "from db import init_db; init_db()"
python3 import_osm_overpass.py
python3 run_import_jobs.py --config ../docs/open_data_sources.json --prune-legacy
4. API als Service starten
- Service-Datei kopieren:
sudo cp /opt/staysense/deploy/systemd/staysense-api.service /etc/systemd/system/
- Secret setzen (Datei anpassen):
sudo nano /etc/systemd/system/staysense-api.service
# STAYSENSE_SERVER_SALT=... setzen
- Aktivieren:
sudo systemctl daemon-reload
sudo systemctl enable --now staysense-api.service
sudo systemctl status staysense-api.service
5. Import-Timer aktivieren
sudo cp /opt/staysense/deploy/systemd/staysense-import.service /etc/systemd/system/
sudo cp /opt/staysense/deploy/systemd/staysense-import.timer /etc/systemd/system/
sudo systemctl daemon-reload
sudo systemctl enable --now staysense-import.timer
sudo systemctl list-timers | grep staysense
6. Nginx konfigurieren
sudo cp /opt/staysense/deploy/nginx/staysense.conf /etc/nginx/sites-available/staysense
sudo ln -s /etc/nginx/sites-available/staysense /etc/nginx/sites-enabled/staysense
sudo nginx -t
sudo systemctl reload nginx
7. API-Route im Frontend anpassen
Fuer Reverse Proxy /api kann in src/index.html vor app.js gesetzt werden:
<script>
window.STAYSENSE_API_BASE = "/api";
</script>
Danach Nginx reloaden.
8. HTTPS (empfohlen)
sudo apt install -y certbot python3-certbot-nginx
sudo certbot --nginx -d staysense.example.com
9. Betrieb / Checks
curl -s http://127.0.0.1:8787/health
sudo journalctl -u staysense-api.service -f
sudo journalctl -u staysense-import.service -n 100