Files
sillyhome-next-dev/docs/sillyhome-dev-install.md
Otto 76d88dd77f
Some checks failed
quality / test (3.11) (pull_request) Has been cancelled
quality / test (3.13) (pull_request) Has been cancelled
Add dev install docs
2026-06-16 21:23:08 +02:00

1.9 KiB

Locale Dev-Umgebung — sillyhome-next-dev

Ziel: Repo lokal klonen, Backend starten und Änderungen entwickeln, ohne das produktive Add-on direkt zu beeinflussen.

Voraussetzungen

  • Git
  • Python 3.10+
  • pip
  • Optional: Nginx als Reverse-Proxy

1. Repo klonen

git clone http://192.168.6.31:3000/Otto/sillyhome-next-dev.git
cd sillyhome-next-dev

2. Abhängigkeiten installieren

sudo apt-get update
sudo apt-get install -y git python3 python3-pip uvicorn
pip3 install -r requirements.txt

3. Backend starten (temporär)

uvicorn app.main:app --reload

4. Backend dauerhaft per systemd starten

Datei /etc/systemd/system/sillyhome-dev.service:

[Unit]
Description=Sillyhome Next Dev
After=network.target

[Service]
WorkingDirectory=/home/otto/sillyhome-next-dev
Environment="PATH=/home/otto/.local/bin:/usr/local/bin:/usr/bin:/bin"
ExecStart=/usr/local/bin/uvicorn app.main:app --host 0.0.0.0 --port 8000
Restart=on-failure

[Install]
WantedBy=multi-user.target

Aktivieren:

sudo systemctl daemon-reload
sudo systemctl enable --now sillyhome-dev.service

5. Optional: Nginx Reverse-Proxy

Datei /etc/nginx/sites-available/sillyhome-dev:

server {
  listen 8080;
  server_name sillyhome-dev.local;
  location / {
    proxy_pass http://127.0.0.1:8000/;
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
  }
}

Aktivieren:

sudo ln -sf /etc/nginx/sites-available/sillyhome-dev /etc/nginx/sites-enabled/
sudo nginx -t && sudo systemctl reload nginx

6. Nur Frontend testen

cd /home/otto/sillyhome-next-dev/app/static
python3 -m http.server 8080 --directory .

Danach im Browser http://127.0.0.1:8080 öffnen.

Hinweis für Weiterentwicklung

Dieser Branch ist für lokale Entwicklungsiterationen gedacht. Änderungen hier sollen einzeln reviewt und danach in den passenden Produktiv-Branch übernommen werden.