NEWS
[HowTo] ioBroker unter Docker auf Synology DiskStation
-
Gibt es irgendetwas zu beachten beim Update von Adaptern?
Von der iobroker Weboberfläche aus beendet er es mit Fehler 10:
$ ./iobroker upgrade geofency Update geofency from @0.2.0 to @0.3.1 npm install iobroker.geofency@0.3.1 --production --prefix "/opt/iobroker" (System call) npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/body-parser/package.json'npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/express/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/express-session/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/finalhandler/package.json'npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/greenlock/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/http-errors/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/iobroker.javascript/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/iobroker.telegram/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/iobroker.telegram/node_modules/node-telegram-bot-api/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/iobroker.admin/node_modules/http-errors/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/iobroker.telegram/node_modules/node-telegram-bot-api/node_modules/debug/package.json'npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/iobroker.telegram/node_modules/node-telegram-bot-api/node_modules/pump/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/iobroker.telegram/node_modules/node-telegram-bot-api/node_modules/bl/node_modules/readable-stream/package.json'npm WARN virtual-tsc@0.3.4 requires a peer of @types/node@* but none was installed. npm WARN virtual-tsc@0.3.4 requires a peer of typescript@^2.0.0 but none was installed. npm ERR! Linux 4.4.15+ npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "install" "iobroker.geofency@0.3.1" "--production" "--prefix" "/opt/iobroker" npm ERR! node v6.12.2 npm ERR! npm v3.10.10 npm ERR! path /opt/iobroker/node_modules/iobroker.geofency/node_modules/request/node_modules/http-signature/node_modules/.bin/sshpk-verify npm ERR! code EEXIST npm ERR! Refusing to delete /opt/iobroker/node_modules/iobroker.geofency/node_modules/request/node_modules/http-signature/node_modules/.bin/sshpk-verify: is outside /opt/iobroker/node_modules/iobroker.geofency/node_modules/request/node_modules/http-signature/node_modules/sshpk and not a link npm ERR! File exists: /opt/iobroker/node_modules/iobroker.geofency/node_modules/request/node_modules/http-signature/node_modules/.bin/sshpk-verify npm ERR! Move it away, and try again. npm ERR! Please include the following file with any support request:npm ERR! /opt/iobroker/npm-debug.log npm ERR! code 1 ERROR: Cannot find io-package.json in /opt/iobroker/node_modules/iobroker.geofency ERROR: process exited with code 10
-
habe eine Notlösung für mich gefunden, bis mqtt als Broker in ioBroker-beta läuft
ich habe mir im docker hub: ncarlier/mqtt als Dockerfile gezogen und port ext: 1883 auf port Docker:1883 aktiviert
In deinem Dockerfile: bunanet/iobroker-Beta das Port ext: 1884 auf port Docker:1883 geroutet.
den mqqt Adapter vers 1.4.2 auf port 1883 konfiguriert
das geht nun erstmal auch wenn es nicht so schön ist.
Gruß
Micha ` Hallo Micha,
sorry, aber ich kann dir gerade absolut nicht folgen. Ich kenne zwar mqtt nicht, aber das was du jetzt gemacht hast, ist doch praktisch einen Docker Container mit mqtt zu installieren auf den sich der mqtt Adapter vom iobroker verbindet… So ist es ja meines Erachtens auch richtig...
Was genau soll ich denn jetzt deiner Meinung mach im Docker Image noch hinzufügen? Sorry, dass ich so doof frage, aber ich verstehe es gerade einfach nicht...
Btw, die Fehlermeldung "EADDRINUSE" deutet in der Regel darauf hin, dass der Port den du verwenden willst schon in Benutzung ist...
MfG,
André
Gesendet von meinem Smartphone mit Tapatalk
-
Gibt es irgendetwas zu beachten beim Update von Adaptern?
Von der iobroker Weboberfläche aus beendet er es mit Fehler 10:
$ ./iobroker upgrade geofency Update geofency from @0.2.0 to @0.3.1 npm install iobroker.geofency@0.3.1 --production --prefix "/opt/iobroker" (System call) npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/body-parser/package.json'npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/express/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/express-session/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/finalhandler/package.json'npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/greenlock/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/http-errors/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/iobroker.javascript/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/iobroker.telegram/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/iobroker.telegram/node_modules/node-telegram-bot-api/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/iobroker.admin/node_modules/http-errors/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/iobroker.telegram/node_modules/node-telegram-bot-api/node_modules/debug/package.json'npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/iobroker.telegram/node_modules/node-telegram-bot-api/node_modules/pump/package.json' npm WARN enoent ENOENT: no such file or directory, open '/opt/iobroker/node_modules/iobroker.telegram/node_modules/node-telegram-bot-api/node_modules/bl/node_modules/readable-stream/package.json'npm WARN virtual-tsc@0.3.4 requires a peer of @types/node@* but none was installed. npm WARN virtual-tsc@0.3.4 requires a peer of typescript@^2.0.0 but none was installed. npm ERR! Linux 4.4.15+ npm ERR! argv "/usr/bin/node" "/usr/bin/npm" "install" "iobroker.geofency@0.3.1" "--production" "--prefix" "/opt/iobroker" npm ERR! node v6.12.2 npm ERR! npm v3.10.10 npm ERR! path /opt/iobroker/node_modules/iobroker.geofency/node_modules/request/node_modules/http-signature/node_modules/.bin/sshpk-verify npm ERR! code EEXIST npm ERR! Refusing to delete /opt/iobroker/node_modules/iobroker.geofency/node_modules/request/node_modules/http-signature/node_modules/.bin/sshpk-verify: is outside /opt/iobroker/node_modules/iobroker.geofency/node_modules/request/node_modules/http-signature/node_modules/sshpk and not a link npm ERR! File exists: /opt/iobroker/node_modules/iobroker.geofency/node_modules/request/node_modules/http-signature/node_modules/.bin/sshpk-verify npm ERR! Move it away, and try again. npm ERR! Please include the following file with any support request:npm ERR! /opt/iobroker/npm-debug.log npm ERR! code 1 ERROR: Cannot find io-package.json in /opt/iobroker/node_modules/iobroker.geofency ERROR: process exited with code 10 ```` `
Nein, eigentlich nicht. Bis jetzt hat es bei mir mit allen Adaptern immer so geklappt. Sobald ich Zeit finde kann ich ja den geofency Adapter bei mir mal testen.
Alternativ mal die Fehlermeldung googlen und ggf. den Adapter mal per Kommandozeile updaten.
MfG,
André
Gesendet von meinem Smartphone mit Tapatalk
-
Danke, André!
Der Fehler trat bei allen Adaptern auf. Irgendwas muss da komplett schief gelaufen sein. Ich hatte damals bei der Installation auch einfach meinen raspi-iobroker-Ordner über den raspi-Docker-Ordner kopiert, vielleicht stimmt jetzt etwas dadurch nicht mehr.
Habe jetzt den Docker komplett neu aufgesetzt, und mittels der iobroker backup-Funktion ein Backup wiederhergestellt. Mal sehen, was beim nächsten Adapterupdate passiert. Scheint jetzt erstmal alles fehlerfrei zu laufen.
dDanke für das Dockerimage und den Support!
edit: Adapterupdates klappen wieder.
-
Hey und Hallo,
gib es was neues zum Yahka Adapter unter dem Docker Image. Es läuft bei mir auch alles einwandfrei im Docker, außer dem Yahka Adapter. Der ist zwar grün und alles läuft, aber ich sehe nichts in Home auf dem iOS Device. Auf dem Raspberrypi, von wo mein Backup herkommt, welches ich verwendet habe läuft alles.
Gibt es hier einen Tipp? Wäre schade, wenn man dafür extra wieder einen PI bräuchte, wenn die Synology doch sowieso läuft.
-
Hey und Hallo,
gib es was neues zum Yahka Adapter unter dem Docker Image. Es läuft bei mir auch alles einwandfrei im Docker, außer dem Yahka Adapter. Der ist zwar grün und alles läuft, aber ich sehe nichts in Home auf dem iOS Device. Auf dem Raspberrypi, von wo mein Backup herkommt, welches ich verwendet habe läuft alles.
Gibt es hier einen Tipp? Wäre schade, wenn man dafür extra wieder einen PI bräuchte, wenn die Synology doch sowieso läuft. `
Hallo,
von mir gibt's dahingehend nichts neues. Da muss die community ran. Ich habe nur ein altes Ipad, das keine ios Updates mehr bekommt und daher homekit schlicht nicht unterstützt… Anschaffung eines neuen ios Device ist nicht geplant. Sorry. Aber vielleicht hat es ja mittlerweile jemand zum laufen bekommen?
MfG,
André
Gesendet von meinem Smartphone mit Tapatalk
-
Hallo André,
kannst du kurz erklären wie du einen weiteren Container gleichzeitig laufen lassen kannst. Irgendwo weiter vorne im Thread hast du das in einem Satz erwähnt z.B. für eigene Entwicklungen.
Ich habe es bei mir versucht mit diversen Einstellungen. Komme aber nie von außen auf die Admin-Seite.
Hast du dafür ein neues Netzwerk definiert? Und dann ggf. Port weitergeleitet?
Danke und Gruß
AlGu
-
IMHO musst Du für den zweiten Container andere/freie Ports von außen auf die inneren/bekannten Ports weiterleiten.
Also alle Standard-Ports die von außen erreichbar sein müssen, musst Du quasi "umleiten".
-
Gibt es irgendetwas zu beachten beim Update von Adaptern? `
Da frage ich mich, warum du die Adapter nicht direkt über die ioBroker-Admin-Seite aktualisierst? Das läuft bei mir immer problemlos durch. Über die Konsole gehe ich ausschließlich beim js-controller. Und selbst da habe ich es die letzten beiden Male "on the fly" getan, ohne den ioBroker vorher zu stoppen. Nach einem Neustart des Containers war dann jedes Mal die aktuelle Version des js-controllers installiert. Vielleicht nicht unbedingt die eleganteste Methode, aber einem geschenkten Barsch…
Mit dem ioBroker im Docker-Container meiner DS718+ bin ich nach wie vor sehr zufrieden. Soweit läuft alles rund. Den yahka-Adapter nutze ich nicht, da ich das mit einer Homebridge auf nem Raspi erledige. Aber es gab auch mit der Homebridge in einem Docker-Container Probleme, weil die einfach nicht gefunden werden konnte von meinen iOS-Geräten. Kürzlich habe ich https://github.com/marcoraddatz/homebridge-docker/issues/42 den Hinweis gelesen, den DS_HOSTNAME mal auf den des ioBroker statt der DiskStation zu setzen. Selbst probiert habe ich das aber noch nicht, da ich mich mittlerweile mit der Raspi-Homebridge gut arrangiert habe.
Bis dann,
Thorsten
-
Hallo Zusammen,
da ich immer wieder höre, dass einzelne Adapter (z.B yahka oder harmony) im Docker Probleme machen, habe ich nochmal ein bisschen recherchiert.
Es scheint als gäbe es in vielen Fällen ein Kommunikationsproblem zwischen dem Docker-Container und dem Lokalen Netzwerk, sodass Geräte nicht gefunden werden oder auch den ioBroker (bzw. den bereitgestellten Dienst) im Netz nicht finden.
Vermutlich liegt das Problem darin begründet, dass der Docker Container keine eigenen Netzwerkschnittstelle besitzt, sondern lediglich das Interface der DS mit nutzt. So werden zum Beispiel Multicast-Pakete, welche für die automatische Erkennung (Auto-Discovery) von Devices im Netzwerk verwendet werden nicht an den Container weiter gereicht.
In der Folge kommt es dann zu solchen Fehlerbildern, in denen Devices vom Adapter nicht "gefunden" werden können.
Aktuell habe ich keine direkte und praktikable Lösung dazu parat. Die einzige Empfehlung, die ich geben kann ist, solche Adapter über eine Multihost-Konfiguration auf einen ioBroker Slave aus zu lagern. So mache ich es auch bereits mit Adaptern die gesonderte Hardware benötigen (die ich z.B. nicht an der DS betreiben will oder kann).
Eine Anleitung zum Thema Multihost, konkret: das Anbinden eines Raspberry Pi als Slave an einen ioBroker-Docker Container, arbeite ich gerade aus. Leider kann ich aktuell noch nicht absehen wann die entsprechende Anleitung fertig sein wird.
Betroffen sind aktuell meiner Meinung nach der Yahka- und der Harmony-Adapter.
Falls jemand in diesem Thema tiefer drin steckt und weitere Erkenntnisse hat, darf er sich gerne bei mir melden.
MfG,
André
-
Vielen Dank für deine Mühe und Zeit die du hier investierst.
Bei mir ging von einen auf den anderen Tag der yahka-Adapter auch nicht mehr.
Habe dann auf der Synology den Bonjour-Dienst deaktiviert.
Und siehe da - es funktionierte wieder.
Es kann also nicht sein, dass irgendwelche Pakete nicht weiter gereicht werden.
Ich denke, dass sich irgendetwas "beisst" bei den Diensten untereinander.
-
Hallo zusammen, bei meiner iobroker installation auf meiner DS218+ hat soweit auch alles funktioniert. Nun wollte ich auch ein automatisches Backup nach der Anleitung von Andre erstellen. Dies ist der Punkt, der nun nicht funktioniert. Ich habe soweit alles mehrfach kontrolliert. Die verschiedenen Pfade dementsprechend angepasst, im Aufgabenplaner das Script erstellt, etc.
Wenn ich das Script manuell im Aufgabenplaner auslöse, bekommen ich folgende Fehlermeldung via mail: Standardausgabe/Fehler:
sh: /volume1/docker/iobroker_backup/backupscript.sh: /bin/bash^M: bad interpreter: No such file or directory
Wo könnte der Fehler liegen ?
Vielen Dank für Eure Hilfe.
eve11
-
Hallo zusammen, bei meiner iobroker installation auf meiner DS218+ hat soweit auch alles funktioniert. Nun wollte ich auch ein automatisches Backup nach der Anleitung von Andre erstellen. Dies ist der Punkt, der nun nicht funktioniert. Ich habe soweit alles mehrfach kontrolliert. Die verschiedenen Pfade dementsprechend angepasst, im Aufgabenplaner das Script erstellt, etc.
Wenn ich das Script manuell im Aufgabenplaner auslöse, bekommen ich folgende Fehlermeldung via mail: Standardausgabe/Fehler:
sh: /volume1/docker/iobroker_backup/backupscript.sh: /bin/bash^M: bad interpreter: No such file or directory
Wo könnte der Fehler liegen ?
Vielen Dank für Eure Hilfe.
eve11 `
Hallo,
du hast dein script bestimmt mit dem editor unter windows erstellt und dann hoch geladen?
Ich tippe darauf, dass die Kodierung deines Scripts nicht kompatibel mit Linux ist, bzw nicht korrekt umkodiert wurde… Kannst du umgehen indem du z.B. mit Notepad++ arbeitest...
schau mal hier: https://askubuntu.com/questions/304999/ … nterpreter
Erster Treffer bei Google.
MfG,
André
-
Hallo Andre,
Problem gelöst, nachdem ich im Notepad++ unter Bearbeiten=>Format Zeilenende den Eintrag auf "Konvertiere auf Unix" geändert.
Nach ist das Backup gelaufen.
Vielen Dank
eve11
-
Hallo,
folgendes Problem.
Ich habe ioBroker installiert, lief auch alles Prima. Hatte beim ersten Stard meine volle 16GB zur Verfühung (DS718+). nach einem Tag zeigte mir ioBoker nur noch 210MB als verfügbaren Arbeitsspeicher an???
Was ist da los?
Was habe ich falsch gemacht???
Sonnst läuft alles super … ausser Harmony ...
Kann mir bitte einer weiterhelfen.
Erst eimal besten Dank...
-
Hallo,
Harmony läuft jetzt bei mir.
Ich habe das Harmony Paket gelöscht und iobroker runtergefahen und neu gestartet und das Harmony Paktet neu installiert.
Danach hatte ich alle Funktionen
Jetzt bleibt nur noch das Problem mit dem Arbeitsspeicher.. :?:
-
hast du dem doker container 16 gb zugewiesen (was totaler quatsch währe) oder dynamisch zuteilen lassen
-
Kann es sein, dass man den Befehl "exec" und oder "wget" innerhalb des buanet Containers per iobroker Skript nicht aufrufen kann?
Ich habe mir immer per Sript mittels des exec Befehls ein Standbild von meiner Webcam geholt auf /opt/iobroker/Cache/bild.jpg.
Muss der Pfad vielleicht anders angegeben sein in einer Dockerumgebung?
-
Hast Du vorher den Ordner erstellt? (ich nehme an ja, frage aber trotzdem mal nach)
Rechte dann auch vergeben?
Des Weiteren kann ich Dir nur empfehlen das gesammte Dockerverzeichnis von iobroker zu mounten. Macht vieles einfacher
-
Danke für den Hinweis!
Habe es gelöst:
Also: Ich hatte tatsächlich den cache-Ordner nicht erstellt. Ich bin davon ausgegangen er ist "ab Werk" vorhanden.
OK, Ordner erstellt, geht immer noch nicht.
Dann im iobroker Containerterminal ein bisschen gespielt und festgestellt, dass "wget" nicht installiert ist.
Habe dann wget nachinstalliert mit "````
apt update
apt install wgetSeitdem geht es wieder 8-) Mh, aber beim nächsten Containertausch ist das wget wieder weg… :?