# Raspberry Pi ## Raspbian lite installieren Auf der vorbereiteten SD-Karte muss im Laufwerk "boot" eine leere Datei `ssh` angelegt werden, damit der SSH-Zugang freigeschaltet wird. ### Nach dem ersten Login: ``` sudo apt update sudo apt upgrade ``` ### Konfiguration anpassen: ``` sudo raspi-config ``` - Zeitzone anpassen - Passwort ändern - Spracheinstellungen ändern ## Zusatzprogramme installieren ``` sudo apt install mc git zbar-tools build-essential python-dev ``` ## Benutzer anlegen Damit der Benutzer auch auf die GPIOs zugreifen kann, muss er zur Gruppe `pgio` hinzugefügt werden. ``` adduser kamera ... sudo usermod -a -G gpio kamera ``` ## virtuelle Python Umgebung einrichten ``` sudo apt install python3-venv cd /opt sudo python3 -m venv kamera sudo chown -R kamera:kamera /opt/kamera/ ``` ### virtuelle Umgebung aktivieren ``` su kamera cd /opt/kamera source bin/activate ``` Wenn alles geklappt hat, befindet man sich jetzt in der virtuellen Python Umgebung und kann dort die benötigten Module installieren ``` pip install rpi.gpio flask uwsgi deactivate ``` ### streaming-kamera klonen ``` cd /opt/kamera git clone https://git.jgz-energie.net/ENERGIE/streaming-kamera.git Außerhalb der virtuellen Umgebung kann das Programm mit `/opt/kamera/bin/python /opt/kamera/streaming-kamera/kamera.py gestartet` werden. Der uWSGI-Server kann mit `/opt/kamera/bin/uwsgi --socket 0.0.0.0:8000 --protocol=http -w server:first_app`, wenn man sich in dem Arbeitsverzeichnis (/opt/kamera/streaming-kamera) befindet. ### Service für uWSGI anlegen /opt/kamera/uwsgi_config.ini ``` [uwsgi] chdir = /opt/kamera/streaming-kamera module = kamera_server:server master = true processes = 1 threads = 2 uid = kamera gid = kamera socket = /tmp/sample_app.sock chmod-socket = 664 vacuum = true die-on-term = true ```