Update Node.js von Homebridge im Docker

Tuxnet

Benutzer
Mitglied seit
02. Jan 2019
Beiträge
619
Punkte für Reaktionen
74
Punkte
48
Wechsel bitte das Betriebssystem von Alpine auf Ubuntu,
und du hast keine Probleme mehr.
 

Anhänge

  • IMG_4262.jpeg
    IMG_4262.jpeg
    211,4 KB · Aufrufe: 15
  • Like
Reaktionen: Fusion

matisse

Benutzer
Mitglied seit
14. Apr 2015
Beiträge
169
Punkte für Reaktionen
4
Punkte
18
Wechsel bitte das Betriebssystem von Alpine auf Ubuntu,
und du hast keine Probleme mehr.
und wie mache ich das genau, bitte ?
mir geht es exakt so wie dem TE senderversender - nur dass ich bereits auf DSM 7.2 bin
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.567
Punkte für Reaktionen
1.392
Punkte
234
Wenn sich die Images nicht grundlegend unterscheiden:
  • Mappe das Datenverzeichnis aus dem Container (wenn nicht schon getan), damit deine Daten erhalten bleiben.
  • Erstelle zur Sicherheit ein Backup in Homebridge und lade es herunter
  • Exportiere die Containereinstellungen (nicht das komplette Image)
  • Öffne die exportierte JSON-Datei
    • Ersetze "image" : "<Dein Alpine Image>", mit "image" : "oznu/homebridge:latest",
  • Lösche deinen bisherigen Homebridge-Container und importiere deine geänderte Konfigurationsdatei.
    Ggf. muss das neue Image vorher manuell geladen werden.
 
Zuletzt bearbeitet:
  • Like
Reaktionen: Tuxnet

senderversteller

Benutzer
Mitglied seit
10. Dez 2015
Beiträge
248
Punkte für Reaktionen
44
Punkte
34
@geimist
Ich komme mit deiner Anleitung nicht ganz klar.
1. Datenverzeichnis aus dem Container mappen - wie genau? Evtl. bei mir schon so, wie finde ich das raus?
2. Als Image habe ich bereits oznu/homebridge:latest - zumindest steht das unten bei Image-Name. Das OS meiner Homebridge ist allerdings (das nicht mehr unterstütze) Alpine Linux mit Node.js 16.14.0. Wie komme ich damit zu Ubuntu mit einer höheren Node.js Version? Stehe etwas auf dem Schlauch...

Bitte nochmal Schritt für Schritt für die ganz Blöden ;) Danke dir.

Vielleicht kannst du aus dem Screenshot was rauslesen? Bin mittlerweile übrigens auch auf DSM 7.2.
Bildschirmfoto 2023-06-15 um 08.13.39.JPG
 
Zuletzt bearbeitet:

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.567
Punkte für Reaktionen
1.392
Punkte
234
Wie man unter ^ Volume sehen kann, hast du die Daten bereits korrekt aus dem Container gemappt. Das Image ist auch das richtige, aber nicht aktuell (März 2022). Eigentlich solltest du auf der Startseite im Container Manager rechts einen Hinweis auf zu aktualisierende Images sehen. Also einfach mal das Image in der GUI updaten. Der Container wird dabei automatisch aktualisiert.
 

senderversteller

Benutzer
Mitglied seit
10. Dez 2015
Beiträge
248
Punkte für Reaktionen
44
Punkte
34
Nein, ich finde nichts:
1686825488963.jpeg
 

senderversteller

Benutzer
Mitglied seit
10. Dez 2015
Beiträge
248
Punkte für Reaktionen
44
Punkte
34
1686826763670.jpeg

Unter "Aktion" gibt es die Auswahl zwischen "Importieren" und "Exportieren".
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.567
Punkte für Reaktionen
1.392
Punkte
234
Dann lad es mal über Registrierung manuell erneut herunter.
Anschließend zum Container gehen und da "Aktion" und "zurücksetzen", nachdem du ihn gestoppt hast.

(Wenn du den Container Manager erst heute installiert haben solltest: wahrscheinlich wird nur 1x täglich nach Updates gesucht und es dir daher noch nicht angezeigt).
 
  • Like
Reaktionen: senderversteller

senderversteller

Benutzer
Mitglied seit
10. Dez 2015
Beiträge
248
Punkte für Reaktionen
44
Punkte
34
In der Tat, habe DSM 7.2 (und damit den Container Manager) heute Morgen installiert. Werde mal bis morgen warten und dann wieder berichten.
 
  • Like
Reaktionen: geimist

senderversteller

Benutzer
Mitglied seit
10. Dez 2015
Beiträge
248
Punkte für Reaktionen
44
Punkte
34
@geimist
Das Update über den Container Manager wurde mir (wie von dir vermutet) heute Morgen angeboten und hat soweit funktioniert.

OSUbuntu Focal Fossa (20.04.5 LTS)
Node.js Versionv18.13.0

Nun zeigt mir die Homebridge folgende Info im Protokoll an:
[6/16/2023, 7:44:34 AM] [Homebridge UI] Unable To Find Homebridge Installation - see https://homebridge.io/w/JJSgZ for help.
[6/16/2023, 7:49:25 AM] [Homebridge UI] Unable To Find Homebridge Installation - see https://homebridge.io/w/JJSgZ for help.
[6/16/2023, 7:53:08 AM] [Homebridge UI] Unable To Find Homebridge Installation - see https://homebridge.io/w/JJSgZ for help.
[6/16/2023, 7:53:54 AM] [Homebridge UI] Unable To Find Homebridge Installation - see https://homebridge.io/w/JJSgZ for help.
[6/16/2023, 7:55:57 AM] [Homebridge UI] Unable To Find Homebridge Installation - see https://homebridge.io/w/JJSgZ for help.

Ich bin dem Hinweis dort bereits gefolgt und habe in der Konsole der Homebridge folgenden Code ausgeführt
Bash:
npm install -g --unsafe-perm homebridge

Anschließend zunächst die Homebridge neu gestartet was die Meldung oben erneut erzeugt hat. Dann habe ich den Container über den Container Manager neu gestartet, mit dem gleichen Resultat.

Die Homebridge funktioniert wie sie es soll, jedoch erscheint die Meldung im Protokoll permanent immer wieder und das Zahnrad oben "Nach Updates suchen..." dreht sich permanent. Weißt du Abhilfe?
 
Zuletzt bearbeitet:

senderversteller

Benutzer
Mitglied seit
10. Dez 2015
Beiträge
248
Punkte für Reaktionen
44
Punkte
34
Nachtrag:
Habe mittlerweile festgestellt, dass der Speicherort nicht mehr passt.
1686895727922.jpeg

Früher sah das so aus:
1684264760874-jpeg.82444


Wie bekomme ich den Speicherpfad wieder auf /homebridge ? Der ganze Kram liegt ja bei mir unter /volume1/docker/homebridge

Offenbar kann man dies in den Container Manager Einstellungen einstellen - allerdings will ich da jetzt nicht unnötig rumspielen. Was muss hier korrekterweise eingetragen werden?

1686896131401.jpeg
 
Zuletzt bearbeitet:

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.567
Punkte für Reaktionen
1.392
Punkte
234
Bei mir sieht die Konfiguration ziemlich genauso aus. /var/lib/homebridge ist ein Link auf /homebridge. Das macht also keinen Unterschied (im gemappten Ordner im DSM solltest du z.B. auch die Datei homebridge.log mit aktuellem Datum sehen).
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.567
Punkte für Reaktionen
1.392
Punkte
234
Ich bin dem Hinweis dort bereits gefolgt und habe in der Konsole der Homebridge folgenden Code ausgeführt
Laut Anleitung soll dieser Befehl mit sudo abgesetzt werden. Das Terminal in der Homebridge-GUI hat aber keine Root-Rechte. Mach es mal über das Terminal in Docker: In der Ansicht des Homebridge-Containers "Aktion" ➜ "Terminal öffnen" ➜ "Erstelle" ➜ "Mit Befehl starten" und hier sh eingeben.

sudo npm install -g --unsafe-perm homebridge
 

senderversteller

Benutzer
Mitglied seit
10. Dez 2015
Beiträge
248
Punkte für Reaktionen
44
Punkte
34
Hab ich das jetzt richtig verstanden?
Zunächst hatte ich einen Tippfehler "nmp" statt "npm".
Trotzdem scheint er es nicht zu fressen.

1686905627185.jpeg
 

Anhänge

  • 1686905068011.jpeg
    1686905068011.jpeg
    59,4 KB · Aufrufe: 3
Zuletzt bearbeitet:

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.567
Punkte für Reaktionen
1.392
Punkte
234
Setze mal bitte folgende Befehle ab (jede Zeile für sich):
Bash:
PATH=$PATH:/opt/homebridge/bin:/var/lib/homebridge/node_modules/.bin:/command:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/homebridge/node_modules/.bin
ln -s "$(which node)" /usr/bin/node
sudo /opt/homebridge/bin/npm install -g --unsafe-perm homebridge
 

senderversteller

Benutzer
Mitglied seit
10. Dez 2015
Beiträge
248
Punkte für Reaktionen
44
Punkte
34
1686907722271.jpeg
 

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.567
Punkte für Reaktionen
1.392
Punkte
234
Sieht ja schon besser aus, aber ich bin mir nicht ganz sicher, ob in deinem Netzwerk was geblockt wird … :unsure:
 

senderversteller

Benutzer
Mitglied seit
10. Dez 2015
Beiträge
248
Punkte für Reaktionen
44
Punkte
34
Ich habe ein Pi-Hole auf einem separaten Raspberry Pi laufen, könnte das ein Problem sein?
Wobei die DS720plus als festen DNS die Fritz!Box eingetragen hat und somit das Pi-Hole nicht nutzt.

Sollte ich das npm mal updaten? Falls ja, mit welchem genauen Befehl? Scheint ja wenig zickig zu sein, dieser Container Terminal ;)
 
Zuletzt bearbeitet:

geimist

Benutzer
Sehr erfahren
Maintainer
Mitglied seit
04. Jan 2012
Beiträge
5.567
Punkte für Reaktionen
1.392
Punkte
234
Es könnte ja auch mit der Firewall zusammenhängen. Ich nutze auch Pihole (im Docker). Mich wundert auch, dass das Update in der GUI bei dir hängt.

Vielleicht hat ja noch jemand anderes eine Idee …
 


 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat