Bei dem Node-Manager des FFRN handelt es sich um die Software welche unter register.freifunk-rhein-neckar.de zur Verfügung steht. Sie wird genutzt um die Knoten zu registrieren und so die fastd Keys zu erfassen.
- python3
- python3-venv (*)
- supervisor (*)
* falls so wie hier beschrieben konfiguriert
Es muss eine Konfigurationsdatei mit dem Namen settings.conf
erstellt werden.
Dafür am besten die settings-example.conf
nach settings.conf
kopieren und
anpassen.
Der in fastd_path
konfigurierte Ordner muss aktuell ein git Repository
mit konfigurierten Remotes sein.
Die Idee ist es alle in der requirements.txt
gennanten Abhängigkeiten in ein
virtual environments zu installieren. Dafür muss dieses erstellt und die Pakete
in diesem installiert werden:
python3 -m venv venv # venv erstellen
source venv/bin/activate # venv aktivieren
pip install -r requirements.txt # Abhängigkeiten installieren
deactivate # venv wieder verlassen
Als erstes supervisor
installieren, dann die folgende Datei in beispielsweise
/etc/supervisor/conf.d/ffrn-node-manager.conf
anlegen:
Es sollte am besten ein komplett unpriviligierter Benutzer erstellt werden unter dem gunicorn laufen kann.
[program:ffrn-node-manager]
command = /opt/ffrn-node-manager/venv/bin/gunicorn backend:app -b 127.0.0.1:8432
directory = /opt/ffrn-node-manager/
user=ffrn-node-manager
autostart=true
autorestart=true
Nun noch supervisor
die Konfigruation einlesen lassen:
supervisorctl reread
supervisorctl update
supervisorctl status ffrn-node-manager
Das sollte es gewesen sein. Auf Port 127.0.0.1:8432 sollte nun der Node-Manager laufen.
Nun noch einen Proxy einrichten damit ein Zugriff von außen möglich ist.
Eventuell könnte das folgende (ungetestete) funktionieren:
cd /opt/ffrn-node-manager/
source venv/bin/activate
pip install --upgrade -r requirements.txt
deactivate
Ein Export der aktuellen Versionen kann dann mittels pip freeze
erfolgen.