NEWS
[HowTo] ioBroker unter Docker auf Synology DiskStation
-
@Shwowak , wenn du den ioBroker Docker Container nicht einmal per Ping erreichen kannst, stimmt irgendetwas nicht an den Netzeinstellungen. Das kann z.B. am Routing, MACVLAN Einstellungen, ... liegen.
Um das Problem einzugrenzen, kannst du denn den ioBroker Docker Containet einmal versuchen von der NAS aus anzupingen und vom PC. Funktioniert das? -
Hallo,
beim ersten Lauf des Containers startet iobroker nicht. Im Log steht folgendes:
----- Image-Version: 3.0.0 -----
----- 2019-07-12 16:25:05 -----Startupscript running...
Installing additional packages...
The following packages will be installed: nano
Installing additional packages done...Directory /opt/iobroker is empty!
Restoring data from image...
Restoring done...This is the first run of an new installation...
Hostname given is OMV...
Renaming ioBroker...
module.js:550
throw err;
^Error: Cannot find module '/opt/iobroker/node_modules/iobroker.js-controller/iobroker.js'
at Function.Module._resolveFilename (module.js:548:15)
at Function.Module._load (module.js:475:25)
at Function.Module.runMain (module.js:694:10)
at startup (bootstrap_node.js:204:16)
at bootstrap_node.js:625:3
Renaming ioBroker done...Changing permissions upon first run (This might take a while! Please be patient!)...
Changing permissions done...Starting ioBroker...
Starting ioBroker done...Kann jemand damit was anfangen?
Gruß
Stefan -
Habe es jetzt mit docker compose mal erstellen lassen.
version: '2.4' services: mqtt: restart: always ports: - "1883:1883" - "9001:9001" image: toke/mosquitto networks: fhem-network: {} volumes: - ./mqtt/config/:/mqtt/config/ - ./mqtt/log/:/mqtt/log/ - ./mqtt/data/:/mqtt/data/ nodered: restart: always ports: - "1880:1880" image: nodered/node-red-docker:0.18.4 volumes: - ./nodered/data/:/root/data/ networks: fhem-network: {} depends_on: - "mqtt" portainer: restart: always image: portainer/portainer:1.21.0 volumes: - ./portainer/:/data - /var/run/docker.sock:/var/run/docker.sock ports: - "9000:9000" magic_mirror: restart: always image: bastilimbach/docker-magicmirror ports: - "8080:8080" volumes: - ./magic_mirror/config:/opt/magic_mirror/config \ - ./magic_mirror/modules:/opt/magic_mirror/modules \ - ./magic_mirror/css:/opt/magic_mirror/css/custom.css \ networks: fhem-network: {} iobroker: restart: always image: buanet/iobroker:latest volumes: - /etc/localtime:/etc/localtime:ro - ./home/intelnuc/fhem-docker/iobroker:/opt/iobroker - ./home/intelnuc/fhem-docker/iobroker/transfer:/tmp networks: macvlan0: ipv4_address: 192.168.200.17 fhem-network: {} networks: fhem-network: driver: bridge macvlan0: driver: macvlan driver_opts: parent: enp0s3 ipam: config: - subnet: 192.168.200.0/24 gateway: 192.168.200.1 ip_range: 192.168.200.17/32
Dann kommt das im Log:
---------------------------------------- ----- Image-Version: 3.0.0 ----- ----- 2019-07-16 09:04:15 ----- ---------------------------------------- Startupscript running... Installing additional packages... The following packages will be installed: nano Installing additional packages done... Changing permissions upon first run (This might take a while! Please be patient!)... Changing permissions done... Starting ioBroker... Starting ioBroker done...
Aber im Ornder iobroker sind keine Dateien ... Ich kann auch in der Console von Iobroker keine befehle ausführen die mit iobroker .... beginnen.
-
@Shwowak
Ist die Pfadangabe richtig? Die beginnt mit ./ Das braucht man doch nur bei relativen Pfaden, du nutzt aber ohnehin absolute? -
Ja läuft jetzt daran lag es und der Ordner muss leer sein.
Habe das problem nun das eine Macvlan eingerichtet habe auf Docker ... siehe oben ( Docker Compose.) Die ip Adresse 192.168.200.17 bekomme ich aufgerufen aber nur auf dem Host System also wo die Virtualmaschine lauft .
Zu dem bekomme überall von allen Adapter fehler .. siehetelegram.0 2019-07-17 22:13:54.138 error polling_error:EFATAL, EFATAL: Error: getaddrinfo EAI_AGAIN api.telegram.org:443 cloud.0 2019-07-17 22:13:53.148 error Error while connecting to cloud: Error: websocket error cloud.0 2019-07-17 22:13:43.139 info Trying to connect as system.user.admin telegram.0 2019-07-17 22:13:33.789 error polling_error:EFATAL, EFATAL: Error: getaddrinfo EAI_AGAIN api.telegram.org:443 telegram.0 2019-07-17 22:12:21.747 error polling_error:EFATAL, EFATAL: Error: getaddrinfo EAI_AGAIN api.telegram.org:443 cloud.0 2019-07-17 22:11:19.058 error Error while connecting to cloud: Error: websocket error telegram.0 2019-07-17 22:11:18.971 error polling_error:EFATAL, EFATAL: Error: getaddrinfo EAI_AGAIN api.telegram.org:443 cloud.0 2019-07-17 22:11:09.017 info Trying to connect as system.user.admin telegram.0 2019-07-17 22:10:58.628 error polling_error:EFATAL, EFATAL: Error: getaddrinfo EAI_AGAIN api.telegram.org:443
-
wieso eigentlich kein Node10 ?
-
Hi,
ich habe Probleme beim Update des js-controllers. In der ioBroker-Container-Konsole des Portainers erhalte ich immer folgende Meldungen:
Jemand einen Tipp?
-
Hat sich erledigt. Hab ein Update des Containers gemacht.
-
Ich habe ein kleines Problem. Ich wollte einen Adapter löschen leider über die Admioberfläche. Leider funktioniert das nicht.
Im Log kommt folgender Fehler:
obroker 2019-07-21 07:53:28.766 info exit 0 iobroker 2019-07-21 07:53:28.757 error You might have to delete it yourself! iobroker 2019-07-21 07:53:28.756 error Error deleting adapter iqontrol from disk: Error: host.iobroker_v2_19-05-19: Cannot uninstall iobroker.iqontrol: 216 host.iobroker_v2_19-05-19 2019-07-21 07:53:09.736 error Cannot write files: /opt/iobroker/iobroker-data/files/iqontrol.admin/_data.json: ENOENT: no such file or directory, open '/opt/iobroker/iobroker-data/files/iqontrol.admin/_data.json' host.iobroker_v2_19-05-19 2019-07-21 07:53:09.735 error Cannot write files: /opt/iobroker/iobroker-data/files/iqontrol/_data.json: ENOENT: no such file or directory, open '/opt/iobroker/iobroker-data/files/iqontrol/_data.json' iobroker 2019-07-21 07:53:09.136 info npm uninstall iobroker.iqontrol --silent --save --prefix "/opt/iobroker" (System call)
Wie kann ich den Adapter über die Konsole löschen oder wie bekomme ich den Fehler weg?
Ich bin noch bei V2 -
es muss ja erst mal so laufen
-
Host Maschine : # Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 192.168.200.1
search fritz.boxContainer:
cat /etc/resolv.confsearch fritz.box
nameserver : <<<<<<<<<< Welche Ip muss hier stehen ?
options ndots:0
root@iobroker:/opt/iobroker# -
@dtp sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Hat sich erledigt.
Nun stehe ich mit dem Update des js-controllers auf die Version 1.5.14 schon wieder vor demselben Problem, wie oben.
Wie bekomme ich den Controller auf die aktuelle Version?
Klappt das bei euch im ioBroker-Container mit
pkill io iobroker update iobroker upgrade self node node_modules/iobroker.js-controller/controller.js >/opt/scripts/docker_iobroker_log.txt 2>&1 &
oder
pkill io npm install iobroker.js-controller –-production node node_modules/iobroker.js-controller/controller.js >/opt/scripts/docker_iobroker_log.txt 2>&1 &
Ich erhalte da immer diese Fehlermeldungen.
-
@andre / @all
Welchen Einfluss hat das Ende der Synology DSM License auf ioBrocker unter Docker
-
@Glasfaser
Hat keine Auswirkungen, geht ja nur um das DSM in Docker.
Steht aber auch nochmal in den Fragen / Antworten: -
Was kann man bei dem fehler machen ?
root@5d84b836d60c:/opt/iobroker# node node_modules/iobroker.admin/admin.js --logs module.js:550 throw err; ^ Error: Cannot find module '/opt/iobroker/node_modules/iobroker.admin/admin.js' at Function.Module._resolveFilename (module.js:548:15) at Function.Module._load (module.js:475:25) at Function.Module.runMain (module.js:694:10) at startup (bootstrap_node.js:204:16) at bootstrap_node.js:625:3 root@5d84b836d60c:/opt/iobroker# ^C root@5d84b836d60c:/opt/iobroker# node -v v8.16.0 root@5d84b836d60c:/opt/iobroker# npm -v 6.4.1
-
@dtp sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
@dtp sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Hat sich erledigt.
Nun stehe ich mit dem Update des js-controllers auf die Version 1.5.14 schon wieder vor demselben Problem, wie oben.
Wie bekomme ich den Controller auf die aktuelle Version?
Klappt das bei euch im ioBroker-Container mit
pkill io iobroker update iobroker upgrade self node node_modules/iobroker.js-controller/controller.js >/opt/scripts/docker_iobroker_log.txt 2>&1 &
oder
pkill io npm install iobroker.js-controller –-production node node_modules/iobroker.js-controller/controller.js >/opt/scripts/docker_iobroker_log.txt 2>&1 &
Hast Du schon das Update gemacht ? Stehe auch vor dem Problem und will nicht wieder was zerschiessen.
-
Das Problem scheint eine fehlerhafte DOS-zu-Linux-Konvertierung zu sein. Komischerweise hat aber nur die Version 3 des ioBroker-Container-Images damit ein Problem. Wenn ich die Version 2 mit demselben Verzeichnis ("/volume1/docker/ioBroker/") verwende, geht das Update des js-controllers per "iobroker update" und "iobroker upgrade self". Nur in der Version 3 bekomme ich ständig die Fehlermeldung mit dem falschen Zeilenende ("\r").
Vielleicht liegt's an MACVLAN, vielleicht an etwas anderem. Keine Ahnung. Leider meldet sich @andré nicht.
Mein Workaround ist im Moment, dass ich beide Version des Containers installiert habe und ein Update des js-controllers nun immer über die Version 2 mache, um danach wieder auf die Version 3 umzustellen.
-
@dtp
Danke für die Antwort. Ehrlich gesagt weiß ich aber trotzdem nicht wie ich das dann genau anstellen muss. (Mit dem selben Verzeichnis ?)
Zwei Container anlegen ist ja nicht das Problem. -
@dtp wozu machst du den
iobroker update
das läuft ehh immer nachts einmal... ausser du willst sofort nach dem publish was neues haben
also reicht das
iobroker upgrade
ich hab auch die 3-er version laufen auch im Ordnersystem .. keine Probleme
-
Nun ja, so wird es beim Update des js-controllers empfohlen. Doch auch mit "iobroker upgrade" alleine komme ich wegen der "\r"-Problematik nicht weiter. Ebenso funktioniert "iobroker backup" oder dergleichen nicht.
Ist schon ziemlich blöd so.
Ich habe - wie gesagt - zwei ioBroker-Container laufen, die auf dasselbe ausgelagerte ioBroker-Verzeichnis zugreifen.
ioBrokerV2 starte ich nur, um den js-controller zu aktualisieren. Ansonsten läuft immer ioBroker über den Portainer. Etwas doof ist, dass ioBrokerV2 über die 192.168.0.10 und ioBroker wegen MACVLAN über die 192.168.0.12 angesprochen werden muss.