NEWS
JS-Controller Update auf Synology NAS unter Docker
-
@dslraser
aktuell wird mir 3.0.19 angeboten.
das mit dem upgrade befehl ist eben genau mein problem. wenn ich das richtig sehe, versucht der Upgrade befehl dies als sudo auszuführen? aber sudo kennt der docker nicht. also so verstehe ich die fehlermeldung. -
@adlerauge1980
hm...ich nutze Portainer. Warum da sudo bei Dir kommt weiß ich leider auch nicht ? -
@adlerauge1980 sagte in JS-Controller Update auf Synology NAS unter Docker:
Da stimmt etwas nicht ..
Du gibst an das du V12.16.1 hast , dann dürfte diese Meldung nicht kommen , sondern :.
Zeige mal :
nodejs -v node -v npm -v
-
@dslraser
Portainer? sagt mir nix.....@jungs einfach mal ein danke für das ganze Arsenal von Personen die hier gerade versuchen zu helfen! DANKE an alle!
-
Frage wie hast du ... mit welchen Befehlen den Node aktualisiert ,
weil der NPM den alten stand hat .( soll 6.14.4 ) -
@Glasfaser
Hallo Glasfaser
Kann ich dir so nicht genau sagen, da dies schon eine weile her ist. -
Da stimmt wie gesagt etwas nicht ...... weil beim iobroker Fix Node 10 gezeigt wird
Zwecks : sudo ..... Audio ....
Nimm den Todo von Andre Link Text
-
Ich weiß ja nicht wieviel Arbeit du schon reingesteckt hast, die Container haben den Vorteil, dass man sie einfach löschen und wieder starten kann.
Bevor du dir da einen abbrichst würde ich dir vorschlagen einfach neu zu beginnen. -
@haselchen sagte in JS-Controller Update auf Synology NAS unter Docker:
Bevor du dir da einen abbrichst würde ich dir vorschlagen einfach neu zu beginnen.
Deshalb der Link von mir ... dort wird er neu erstellt
-
@haselchen sagte in JS-Controller Update auf Synology NAS unter Docker:
Nodejs 10.20.1,JS Controller 2.2.9
Na .. mach mal ein Update , ober traust du dich nicht .....
-
-
habe das eigentlich schon 2 mal hinbekommen seit IoBroker im Docker läuft aber diesmal nicht mehr!
Ich mache mit Portainer eine Console auf um dort dann mit "pkill io" den IoBroker zu stoppen um danach dann den JS Controller upzudaten.
Nachdem ich aber den "pkill io" absende schließt er mir die Console gleich wieder und startet IoBroker im Docker neu!!!
Somit kann ich keine weitere Befehle senden.root@iobroker:/opt/iobroker# nodejs -v v12.20.2 root@iobroker:/opt/iobroker# node -v v12.20.2 root@iobroker:/opt/iobroker# npm -v sudo: Hostname iobroker kann nicht aufgelöst werden: Der Name oder der Dienst ist nicht bekannt 6.14.11 root@iobroker:/opt/iobroker#
der Fehler bei NPM ist auch nicht normal oder?
möchte gerne den Master hochziehen um den Slave upzudaten.
-
pkill -u iobroker
iobroker update
iobroker upgrade selfhttps://smarthome.buanet.de/2020/10/iobroker-docker-container-updates-upgrades/
-
@dslraser sagte in JS-Controller Update auf Synology NAS unter Docker:
pkill -u iobroker
iobroker update
iobroker upgrade selfhttps://smarthome.buanet.de/2020/10/iobroker-docker-container-updates-upgrades/
Danke, funktioniert!
-
Ich habe auch gerade versucht das Update des js-controller zu machen. (Synology Docker)
Leider bekomme ich folgende Fehlermeldung:Update js-controller from @3.1.6 to @3.2.16 NPM version: 6.14.11 npm install iobroker.js-controller@3.2.16 --loglevel error --unsafe-perm --prefix "/opt/iobroker" (System call) npm ERR! code EEXIST npm ERR! path /opt/iobroker/node_modules/iobroker.js-controller/node_modules/.bin/mkdirp npm ERR! Refusing to delete /opt/iobroker/node_modules/iobroker.js-controller/node_modules/.bin/mkdirp: is outside /opt/iob roker/node_modules/iobroker.js-controller/node_modules/mkdirp and not a link npm ERR! File exists: /opt/iobroker/node_modules/iobroker.js-controller/node_modules/.bin/mkdirp npm ERR! Remove the existing file and try again, or run npm npm ERR! with --force to overwrite files recklessly. npm ERR! A complete log of this run can be found in: npm ERR! /opt/iobroker/.npm/_logs/2021-03-02T09_01_31_301Z-debug.log Starting node restart.js
EDIT: Hat sich erledigt. Mein Container hat durch eine falsche UID zu wenig Berechtigungen gehabt.
-
@airmaxchen kannst Du ein paar mehr Details zu Deiner Lösung geben? n welcher Stelle hast Du die UID angepasst? Ich habe das gleiche Problem, aber wohl noch nicht die richtige Stelle für das Anpassen der UID gefunden.
-
ich kann mir nicht vorstellen , das durch eine Änderung der UID dieser Fehler dann weg war .
Denn der JS ist laut Log außerhalb des richtigen Verzeichnisses zuvor installiert und das sollte dann nach Anweisung gemacht werden :
is outside /opt/iob ... npm ERR! Remove the existing file and try again, or run npm npm ERR! with --force to overwrite files recklessly.
-
@glasfaser da ich den Standard buanet container hier benutzt habe, wundert mich dass mit dem "ausserhalb des richtigen Verzeichnisses" etwas. "/opt/iobroker" wird bei mir in ein anderes Verzeichnis gemountet, daher klang das mit den Verzeichnisrechten im ersten Moment nach einer potentiellen Lösung...
Zu dem nach Anweisung machen:
Ich hatte die Meldung zuerst für "/.bin/iobroker" und nachdem ich die gelöscht hatte für "/.bin/semver" und hab dann nicht weiter datei für datei gelöscht in der Hoffnung dass es irgendwann geht.
Für mich klingt das nach was allgemeinerem dass ich mit einzelnem Löschen nicht unbedingt löse.Ich versuche auch die Meldung richtig zu verstehen.
"/opt/iobroker/node_modules/.bin/iobroker: is outside /opt/iobroker/node_modules/iobroker.js-controller"
klingt ziemlich einleuchtend.
Der Teil am Ende "and not a link" verwundert mich aber, da in iobroker "../iobroker.js-controller/iobroker.js" steht und damit doch nach Link aussieht.Was übersehe ich?
-
@kefut Ich habe gesehen, dass mein admin-Account auf der Syno die uid=1026 hat, aber bei den Umgebungsvariablen im Docker-Container unter SETUID etwas anderes gestanden ist (ich weiß nicht mehr was). Ich habe dort dann SETUID auf 1026 geändert und das JS-Controller Update hat funktioniert.
-
@airmaxchen Das SETUID hat aber soweit ich das verstehe Einfluss auf den iobroker user. Das update führst du aber unter root aus - und root sollte ja eigentlich alles dürfen. Ich werde nicht schlau daraus...