Voraussetzungen
- openHAB 3.4.2
- Raspberry Pi OS 11 bullseye
cat /etc/os-release
- Node.js v14.21.2
node -v
- npm v6.14.17
npm -v
Kurzbefehle
sudo systemctl stop frontail.service
– Dienst stoppensudo systemctl start frontail.service
– Dienst startensudo systemctl daemon-reload
– systemd Manager Konfigurationen neu laden (z.B. nach Änderung an .service Datei)node -v
– Version von Node.js ausgebennpm -v
– Version von npm ausgeben
Node.js + npm installieren
- Paketquellen aktualisieren, ggf. Fehler beheben
sudp apt-get update
- Pakete installieren (ggf. aktuellere Version für Node.js auswählen)
sudo
curl -sL https://deb.nodesource.com/setup_14.x | sudo bash -
sudo apt-get install -y nodejs
- Versionen überprüfen
node -v
npm -v
Frontail installieren
- Pakte installieren
sudo npm i frontail -g
- manuelles starten von Frontail im Dark Theme
frontail -t dark /var/log/openhab/openhab.log
- hat alles geklappt ist die Log Ausgabe unter http://Raspberry-IP:9001 abrufbar
Frontail Theme konfigurieren
- die Darstellung der Log Ausgabe im Browser wird über eine .json Datei gesteuert
- um eine farbige Ausgabe zu erzeugen, habe ich mich nach dem Projekt von Schnuecks gerichtet
- dazu müssen diverse Dateien erstellt bzw. abgeändert werden
- die originalen Dateien hab eich in .old umbenannt umm ggf. später wieder zurückwechseln zu können
- Dienst stoppen
sudo systemctl stop frontail.service
- web/assets/styles/openhab_AEM.css
sudo nano /usr/lib/node_modules/frontail/web/assets/styles/openhab_AEM.css
-> Link github.com
web/assets/styles/bootstrap.min.css
sudo mv /usr/lib/node_modules/frontail/web/assets/styles/bootstrap.min.css /usr/lib/node_modules/frontail/web/assets/styles/bootstrap.min.css.old
sudo nano /usr/lib/node_modules/frontail/web/assets/styles/bootstrap.min.css
-> bootstrap.min.css auf github.com
web/index.html
sudo mv /usr/lib/node_modules/frontail/web/index.html /usr/lib/node_modules/frontail/web/index.html.old
sudo nano /usr/lib/node_modules/frontail/web/index.html
-> index.html auf github.com
web/assets/app.js
sudo mv /usr/lib/node_modules/frontail/web/assets/app.js /usr/lib/node_modules/frontail/web/assets/app.js.oldsudo nano /usr/lib/node_modules/frontail/web/assets/app.js
-> app.js auf github.com
web/assets/tinycon.min.js
sudo mv /usr/lib/node_modules/frontail/web/assets/tinycon.min.js /usr/lib/node_modules/frontail/web/assets/tinycon.min.js.oldsudo nano /usr/lib/node_modules/frontail/web/assets/tinycon.min.js
-> tinycon.min.js auf github.com
preset/openhab_AEM.json
sudo nano /usr/lib/node_modules/frontail/preset/openhab_AEM.json
-> openhab_AEM.json auf github.com
Bilder
- die Bilder favicon.ico, favicon.svg, apple-touch-icon.png in den Ordner
/usr/lib/node_modules/frontail/web/assets kopieren
-> Link github.com
Frontail als service einrichten
- Service Datei erstellen
sudo nano /etc/systemd/system/frontail.service
[Unit]
Description=Frontail openHAB instance, reachable at http://%H:9001
Documentation=https://github.com/mthenw/frontail
After=openhab.service
[Service]
Type=simple
ExecStart=/usr/bin/frontail --ui-highlight --ui-highlight-preset /usr/lib/node_modules/frontail/preset/openhab_AEM.json -t openhab_AEM -l 2000 -n 200 /var/log/openhab/openhab.log /var/log/openhab/events.log
Restart=always
User=openhab
Group=openhab
Environment=PATH=/usr/local/bin:/usr/bin/
Environment=NODE_ENV=production
WorkingDirectory=/usr/bin/
[Install]
WantedBy=multi-user.target
- Berechtigung für service Datei setzen
sudo chmod 777 /etc/systemd/system/frontail.service
- Dienst aktivieren
sudo systemctl enable frontail.service
- Dienst einmalig manuell starten
sudo systemctl start frontail.service
- ab sofort steht der Frontail Dienst auch nach jedem Neustart zur Verfügung
Quellen
- github.com – Schnuecks openhab_AEM.json
- npmjs.com – frontail – streaming logs to the browser
- digitalocean.com – Verwenden von Systemctl zur Verwaltung von Systemd-Diensten und -einheiten
- itigc.com – So erstellen oder konfigurieren Sie einen Dienst auf Linux-Servern mit Systemd