NEWS
[HowTo] ioBroker unter Docker auf Synology DiskStation
-
@rookie50 sagte in [HowTo] ioBroker unter Docker auf Synology DiskStation:
Welche Möglichkeiten gibt es sonst noch?
evtl muss auch der Slave gestoppt sein. Ansonsten mit
ps aux
prüfen ob noch iobroker Prozesse laufen und diese händisch 'killen'.kill -9 PID
-
@rookie50 sagte in [HowTo] ioBroker unter Docker auf Synology DiskStation:
Hat wer eine Idee, wie ich den alten Host entferne?
Den Ordner vom alten Host (in der Expertenansicht) löschen ,
dann ioBroker neu starten -
@glasfaser DANKE!! Das war's. Jetzt ist der Eintrag weg und ich bekomme keine unnötigen logg Meldungen mehr.
Gruß Rookie
-
@glasfaser DANKE!! Das war's. Jetzt ist der Eintrag weg und ich bekomme keine unnötigen logg Meldungen mehr.
Gruß Rookie
-
Ich hab n Problem..
Hab vor 6 Wochen ein Update auf DSM 7 durchgeführt, lief bis gestern super
Seit heute lässt sich der Container nicht mehr starten. hab nichts verändert.. Zumindest nicht bewusst, folgende Fehlermeldung erhalte ich:Failure failed to create endpoint iobroker on network iob_public: network id "d3a15b5bcdacdd57542ef9c0ff5de34150a682b95f69f87fb0efe58de5eda8ce" not found
Kann damit jemand was anfangen?
-
Ich habe Probleme, wenn ich meinen bestehenden Docker Container (aktuell Tag
v5.1.0
) auf Taglatest-v5
updaten will. Der Container scheint in einer Endlosschleife zu hängen und nach ca. 1 Minute immer wieder neu zu starten.Hier sind die Logs, die meiner Meinung nach nicht richtig gesund aussehen.
what(): basic_string::_M_replace_aux, /opt/scripts/iobroker_startup.sh: line 505: 96 Aborted gosu iobroker node node_modules/iobroker.js-controller/controller.js, tail: cannot read realtime clock: Operation not permitted, , --------------------------------------------------------------------------------, ------------------------- 1970-01-01 01:00:00 -------------------------, --------------------------------------------------------------------------------, , --------------------------------------------------------------------------------, ----- Welcome to your ioBroker-container! -----, ----- Startupscript is now running. -----, ----- Please be patient! -----, --------------------------------------------------------------------------------, , --------------------------------------------------------------------------------, ----- Debugging information -----, ----- -----, ----- System -----, ----- arch: armv7l -----, ----- -----, ----- Docker-Image -----, ----- image: v5.2.0 -----, ----- build: 2021-10-01T03:48:11+00:00 -----, ----- -----, ----- Versions -----, terminate called after throwing an instance of 'std::length_error', what(): basic_string::_M_replace_aux, ----- node: -----, terminate called after throwing an instance of 'std::length_error', what(): basic_string::_M_replace_aux, ----- npm: -----, ----- -----, ----- ENV -----, ----- IOB_MULTIHOST: slave -----, ----- IOB_OBJECTSDB_HOST: 192.168.13.10 -----, ----- IOB_OBJECTSDB_PORT: 9001 -----, ----- IOB_OBJECTSDB_TYPE: file -----, ----- SETGID: 1000 -----, ----- SETUID: 1000 -----, ----- IOB_STATESDB_HOST: 192.168.13.10 -----, ----- IOB_STATESDB_PORT: 9000 -----, ----- IOB_STATESDB_TYPE: file -----, --------------------------------------------------------------------------------, , --------------------------------------------------------------------------------, ----- Step 1 of 5: Preparing container -----, --------------------------------------------------------------------------------, , Nothing to do here., , --------------------------------------------------------------------------------, ----- Step 2 of 5: Detecting ioBroker installation -----, --------------------------------------------------------------------------------, , Existing installation of ioBroker detected in /opt/iobroker., , --------------------------------------------------------------------------------, ----- Step 3 of 5: Checking ioBroker installation -----, --------------------------------------------------------------------------------, , (Re)Setting folder permissions (This might take a while! Please be patient!)..., Done., , Fixing "sudo-bug" by replacing sudo in iobroker with gosu..., cp: preserving times for '/opt/iobroker/iobroker.bak': Operation not permitted, Done., , terminate called after throwing an instance of 'std::length_error', what(): basic_string::_M_replace_aux, iobroker: line 6: 64 Aborted gosu iobroker node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js "$@", /opt/scripts/iobroker_startup.sh: line 199: [: !=: unary operator expected, --------------------------------------------------------------------------------, ----- Step 4 of 5: Applying special settings -----, --------------------------------------------------------------------------------, , Some adapters have special requirements/ settings which can be activated by the use of environment variables., For more information take a look at readme.md on Github!, , Multihost is set as "slave" by ENV and external objects db is set., Skipping this step..., Done., , Multihost is set as "slave" by ENV and external states db is set., Skipping this step..., Done., , ENV IOB_OBJECTSDB_TYPE is set and value meets detected ioBroker installation. Nothing to do here., ENV IOB_OBJECTSDB_HOST is set and value meets detected ioBroker installation. Nothing to do here., ENV IOB_OBJECTSDB_PORT is set and value meets detected ioBroker installation. Nothing to do here., , ENV IOB_STATESDB_TYPE is set and value meets detected ioBroker installation. Nothing to do here., ENV IOB_STATESDB_HOST is set and value meets detected ioBroker installation. Nothing to do here., ENV IOB_STATESDB_PORT is set and value meets detected ioBroker installation. Nothing to do here., , --------------------------------------------------------------------------------, ----- Step 5 of 5: ioBroker startup -----, --------------------------------------------------------------------------------, , Starting ioBroker..., ,
Hat da jemand eine Idee zu?
-
@kraxelhuber Ja, habe ich gerade ein Issue zu. Lass mich raten: Docker auf Raspberry (oder zumindest ARM Architektur)???
Ganz unten steht die Lösung: https://github.com/buanet/ioBroker.docker/issues/199
MfG,
André -
@andre said in [HowTo] ioBroker unter Docker auf Synology DiskStation:
@kraxelhuber Ja, habe ich gerade ein Issue zu. Lass mich raten: Docker auf Raspberry (oder zumindest ARM Architektur)???
Ganz unten steht die Lösung: https://github.com/buanet/ioBroker.docker/issues/199
MfG,
AndréJa, richtig, ich nutze einen Raspberry Pi. Deine Lösung hat aber leider nicht funktioniert. Habe den entsprechenden Terminal Output bei GitHub gepostet.
-
@andre said in [HowTo] ioBroker unter Docker auf Synology DiskStation:
@kraxelhuber Ja, habe ich gerade ein Issue zu. Lass mich raten: Docker auf Raspberry (oder zumindest ARM Architektur)???
Was habe ich denn zu erwarten, wenn ich den Container auf meiner Synology DS716II+ auf
latest-v5
update? Sind hier irgendwelche Schwierigkeiten bekannt? -
Ich habˋ gestern versuchsweise einen neuen Container auf meiner QNAP erstellt.
- Backup gem. Anweisung erstellt/hinzugefügt.
- Der Hostname habe ich geändert, Erststart funktktioniert wie erwartet nicht, Workaround
Container startete anschliessend, Backup wurde auch wiederhergestellt. Die Instanzen waren alle da, die installierten Adapter jedoch nicht (ausser den drei Standartadapter). Gibt‘s dazu evtl. eine Idee?
Versionen:
- Container Station QNAP
- Image: v5.2.0-amd64
-
@kraxelhuber sagte in [HowTo] ioBroker unter Docker auf Synology DiskStation:
Was habe ich denn zu erwarten, wenn ich den Container auf meiner Synology DS716II+ auf latest-v5 update? Sind hier irgendwelche Schwierigkeiten bekannt?
Kommt drauf an was du meinst. Da es sich m.W. bei der Syno um einen Celeron handelt trifft zumindest das ARM Problem nicht zu...
-
@ice987 Das hört sich für mich erstmal nicht verkehrt an. Wenn du Upgrade per Restore machst, dann werden erst anschließend die Adapter nachinstalliert. Die Instanzen bleiben solange ohne Icon. Ein Blick in das ioBroker Log sollte helfen. Je nach Anzahl der Adapter und Performance des Systems kann das Neuinstallieren schon mal ein Stündchen dauern...
Wenn du aber "nur" von v5.1.0 auf v5.2.0 (also ein Minor Upgrade) gehst, dann brauchst du den Stunt nicht zu machen. Einfach Container Löschen. ioBroker Ordner duplizieren. Container neu anlegen und freuen... geht eigentlich problemlos...
MfG,
André -
Wunderbar, vielen Dank für deine Rückmeldung!
Dann müsste ich bei der „Backupwiederherstellung“ einfach länger warten (habe dann schon gelacht weil auch in der Beschreibung steht ).
Von ich möchte von 5.1 auf 5.2: somit werde ich mal den (kopierten) Ordner mounten und erneut versuchen…
Ich denke auch, dass das nicht ein grundsätzliches Problem ist. Vielen Dank für all deinen Effort (Support und Entwicklung)!
-
Habe mal eine Frage an die Experten bezüglich der Geschwindigkeit von iobroker unter Docker.
Bei mir läuft das auf einer Synology DS918
- CPU Belastung ~23%
- RAM ~36%
- Wenn ich im Docker einen Ping auf 8.8.8.8 setze liegt der zwischen 10-20ms
Wenn ich jetzt im Browser z.B. die Seite http://192.168.0.4:8081/#tab-objects aufrufe, dauert das 25sec bis die aufgebaut ist. Finde das schon ziemlich lange, habe aber leider keinen direkten Vergleich.
Dauert das bei auch so lange?
-
@heinzie Das scheint mir zu langsam:
DS218+ mit 10GB RAM, Objekte: 15233, ca. 4 Sekunden Ladezeit.Festplatte frei: 29%, Gesamte RAM-Auslastung: 2364 Mb / Frei: 36% = 3572 Mb [Server: iobroker - 34 Prozesse]
Ich verwende allerdings REDIS für die States.
-
@rk62 Danke für den Tipp mit REDIS, dass kannte ich noch gar nicht.
Habe das mal eingebaut und ist jetzt deutlich schneller <15sec.
Das ganze scheint jetzt auch deutlich flüssiger zu laufen -
Wie es im Docker auf der Synology ist, kann ich nicht sagen.
Aber auf meinem RasPi4 erscheint das Webinterface in 1,5 Sekunden. (beim ersten laden im sauberen Browser) -
@paul-ol Hab nochmal mit einem anderen Browser getestet, aber unter 13sec komme ich nicht.
Das ist dann aber schon deutlich langsamer gegenüber dem Raspberry Pi -
@heinzie Genau. Deswegen wollte ich das zumindest mal erwähne. Beim Einstellen summieren sich da die Sekunden zu unnötige Stunden.
Ich hab es auch nicht mehr auf dem Synology Docker. Vor allem Seit der DSM 7.
Nun hab ich wieder ein Raspi welches ich alle 3 Monate komplett backuppe.Läuft stabil. (bis auf ioBroker was durchwachsen ist.)
-
Moin zusammen.
Ich hab' jetzt erstmals auf meinem Raspi 4B an ein Update von 4.2.0 auf 6.0.0 gewagt. Node.js war aktuell (14.x) im alten Container, js-controller nur minimal um ein Minor-Update veraltet. Ich fahre ioBroker mit Docker-Compose per docker-compose.yml zusammen mit zwei anderen Containern hoch. So habe ich alles runtergefahren mit "docker-compose stop" und mit "docker-compose up --build" wieder hochgefahren (bewirkt ja ein Recreate mit neuem Container). Soweit alles korrekt gemacht, oder?
Jetzt habe ich aber das Problem, dass der ioBroker beim Start in eine Endlosschleife gerät und das Skript ständig von Schritt 5 aus wieder nach Schritt 1 springt. Was kann man tun? Ist dieser komische Zeitfehler (Node.js) irgendwie bekannt? Hatte ich mit 4.2.0 nicht...
Den Raspi hatte ich auch mal upgedatet, hat nichts verändert am Problem.
-------------------------------------------------------------------------------- ----- Welcome to your ioBroker-container! ----- ----- Startupscript is now running. ----- ----- Please be patient! ----- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- ----- Debugging information ----- ----- ----- ----- System ----- ----- arch: armv7l ----- ----- ----- ----- Docker-Image ----- ----- image: v6.0.0 ----- ----- build: 2021-12-17T03:48:21+00:00 ----- ----- ----- ----- Versions ----- Node.js[21]: ../src/util.cc:188:double node::GetCurrentTimeInMicroseconds(): Assertion `(0) == (uv_gettimeofday(&tv))' failed. ----- node: ----- Node.js[23]: ../src/util.cc:188:double node::GetCurrentTimeInMicroseconds(): Assertion `(0) == (uv_gettimeofday(&tv))' failed. ----- npm: ----- ----- ----- ----- ENV ----- ----- PACKAGES: nano build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev ----- ----- SETGID: 1000 ----- ----- SETUID: 1000 ----- ----- USBDEVICES: /dev/ttyUSB0 /dev/ttyAMA0 ----- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- ----- Step 1 of 5: Preparing container ----- -------------------------------------------------------------------------------- Installing additional packages is set by ENV. Checking the following Packages: nano build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev... W: GPG error: http://security.debian.org/debian-security bullseye-security InRelease: At least one invalid signature was encountered. E: The repository 'http://security.debian.org/debian-security bullseye-security InRelease' is not signed. W: GPG error: http://deb.debian.org/debian bullseye InRelease: At least one invalid signature was encountered. E: The repository 'http://deb.debian.org/debian bullseye InRelease' is not signed. W: GPG error: http://deb.debian.org/debian bullseye-updates InRelease: At least one invalid signature was encountered. E: The repository 'http://deb.debian.org/debian bullseye-updates InRelease' is not signed. nano is not installed. Installing... sudo: unable to get time of day: Operation not permitted sudo: error initializing audit plugin sudoers_audit Done. build-essential is already installed. libcairo2-dev is already installed. libpango1.0-dev is already installed. libjpeg-dev is already installed. libgif-dev is already installed. librsvg2-dev is already installed. Reading package lists... Building dependency tree... Reading state information... Reading package lists... Building dependency tree... Reading state information... 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. Done. -------------------------------------------------------------------------------- ----- Step 2 of 5: Detecting ioBroker installation ----- -------------------------------------------------------------------------------- Existing installation of ioBroker detected in /opt/iobroker. -------------------------------------------------------------------------------- ----- Step 3 of 5: Checking ioBroker installation ----- -------------------------------------------------------------------------------- (Re)Setting folder permissions (This might take a while! Please be patient!)... Done. Fixing "sudo-bug" by replacing sudo in iobroker with gosu... cp: preserving times for '/opt/iobroker/iobroker.bak': Operation not permitted Done. Node.js[196]: ../src/util.cc:188:double node::GetCurrentTimeInMicroseconds(): Assertion `(0) == (uv_gettimeofday(&tv))' failed. iobroker: line 6: 196 Aborted gosu iobroker node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js "$@" /opt/scripts/iobroker_startup.sh: line 199: [: !=: unary operator expected -------------------------------------------------------------------------------- ----- Step 4 of 5: Applying special settings ----- -------------------------------------------------------------------------------- Some adapters have special requirements/ settings which can be activated by the use of environment variables. For more information take a look at readme.md on Github! Usb-device-support is activated by ENV. Setting permissions for /dev/ttyUSB0 /dev/ttyAMA0... Done. -------------------------------------------------------------------------------- ----- Step 5 of 5: ioBroker startup ----- -------------------------------------------------------------------------------- Starting ioBroker... Node.js[218]: ../src/util.cc:188:double node::GetCurrentTimeInMicroseconds(): Assertion `(0) == (uv_gettimeofday(&tv))' failed. /opt/scripts/iobroker_startup.sh: line 505: 218 Aborted gosu iobroker node node_modules/iobroker.js-controller/controller.js tail: cannot read realtime clock: Operation not permitted -------------------------------------------------------------------------------- ------------------------- 1970-01-01 01:00:00 ------------------------- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- ----- Welcome to your ioBroker-container! ----- ----- Startupscript is now running. ----- ----- Please be patient! ----- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- ----- Debugging information ----- ----- ----- ----- System ----- ----- arch: armv7l ----- ----- ----- ----- Docker-Image ----- ----- image: v6.0.0 ----- ----- build: 2021-12-17T03:48:21+00:00 ----- ----- ----- ----- Versions ----- Node.js[20]: ../src/util.cc:188:double node::GetCurrentTimeInMicroseconds(): Assertion `(0) == (uv_gettimeofday(&tv))' failed. ----- node: ----- Node.js[22]: ../src/util.cc:188:double node::GetCurrentTimeInMicroseconds(): Assertion `(0) == (uv_gettimeofday(&tv))' failed. ----- npm: ----- ----- ----- ----- ENV ----- ----- PACKAGES: nano build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev ----- ----- SETGID: 1000 ----- ----- SETUID: 1000 ----- ----- USBDEVICES: /dev/ttyUSB0 /dev/ttyAMA0 ----- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- ----- Step 1 of 5: Preparing container ----- -------------------------------------------------------------------------------- Installing additional packages is set by ENV. Checking the following Packages: nano build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev... W: GPG error: http://security.debian.org/debian-security bullseye-security InRelease: At least one invalid signature was encountered. E: The repository 'http://security.debian.org/debian-security bullseye-security InRelease' is not signed. W: GPG error: http://deb.debian.org/debian bullseye InRelease: At least one invalid signature was encountered. E: The repository 'http://deb.debian.org/debian bullseye InRelease' is not signed. W: GPG error: http://deb.debian.org/debian bullseye-updates InRelease: At least one invalid signature was encountered. E: The repository 'http://deb.debian.org/debian bullseye-updates InRelease' is not signed. nano is not installed. Installing... sudo: unable to get time of day: Operation not permitted sudo: error initializing audit plugin sudoers_audit Done. build-essential is already installed. libcairo2-dev is already installed. libpango1.0-dev is already installed. libjpeg-dev is already installed. libgif-dev is already installed. librsvg2-dev is already installed. Reading package lists... Building dependency tree... Reading state information... Reading package lists... Building dependency tree... Reading state information... 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. Done. -------------------------------------------------------------------------------- ----- Step 2 of 5: Detecting ioBroker installation ----- -------------------------------------------------------------------------------- Existing installation of ioBroker detected in /opt/iobroker. -------------------------------------------------------------------------------- ----- Step 3 of 5: Checking ioBroker installation ----- -------------------------------------------------------------------------------- (Re)Setting folder permissions (This might take a while! Please be patient!)... Done. Fixing "sudo-bug" by replacing sudo in iobroker with gosu... cp: preserving times for '/opt/iobroker/iobroker.bak': Operation not permitted Done. Node.js[188]: ../src/util.cc:188:double node::GetCurrentTimeInMicroseconds(): Assertion `(0) == (uv_gettimeofday(&tv))' failed. iobroker: line 6: 188 Aborted gosu iobroker node /opt/iobroker/node_modules/iobroker.js-controller/iobroker.js "$@" /opt/scripts/iobroker_startup.sh: line 199: [: !=: unary operator expected -------------------------------------------------------------------------------- ----- Step 4 of 5: Applying special settings ----- -------------------------------------------------------------------------------- Some adapters have special requirements/ settings which can be activated by the use of environment variables. For more information take a look at readme.md on Github! Usb-device-support is activated by ENV. Setting permissions for /dev/ttyUSB0 /dev/ttyAMA0... Done. -------------------------------------------------------------------------------- ----- Step 5 of 5: ioBroker startup ----- -------------------------------------------------------------------------------- Starting ioBroker... Node.js[210]: ../src/util.cc:188:double node::GetCurrentTimeInMicroseconds(): Assertion `(0) == (uv_gettimeofday(&tv))' failed. /opt/scripts/iobroker_startup.sh: line 505: 210 Aborted gosu iobroker node node_modules/iobroker.js-controller/controller.js tail: cannot read realtime clock: Operation not permitted -------------------------------------------------------------------------------- ------------------------- 1970-01-01 01:00:00 ------------------------- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- ----- Welcome to your ioBroker-container! ----- ----- Startupscript is now running. ----- ----- Please be patient! ----- -------------------------------------------------------------------------------- -------------------------------------------------------------------------------- ----- Debugging information ----- ----- ----- ----- System ----- ----- arch: armv7l ----- ----- ----- ----- Docker-Image ----- ----- image: v6.0.0 ----- ----- build: 2021-12-17T03:48:21+00:00 ----- ----- ----- ----- Versions ----- Node.js[20]: ../src/util.cc:188:double node::GetCurrentTimeInMicroseconds(): Assertion `(0) == (uv_gettimeofday(&tv))' failed. ----- node: ----- Node.js[22]: ../src/util.cc:188:double node::GetCurrentTimeInMicroseconds(): Assertion `(0) == (uv_gettimeofday(&tv))' failed. ----- npm: ----- ----- ----- ----- ENV ----- ----- PACKAGES: nano build-essential libcairo2-dev libpango1.0-dev libjpeg-dev libgif-dev librsvg2-dev ----- ----- SETGID: 1000 ----- ----- SETUID: 1000 ----- ----- USBDEVICES: /dev/ttyUSB0 /dev/ttyAMA0 ----- --------------------------------------------------------------------------------