NEWS
[HowTo] ioBroker unter Docker auf Synology DiskStation
-
@dtp sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Leider meldet sich @andre nicht.
Sorry, lasse gerade meine Beine in der Adria baumeln. Ich lese aber mit.
Am besten es fasst mal jemand das Verhalten zusammen und erstellt einen Issue auf Github.
Wichtig dabei: Ich brauche Versionen zu geht/ geht nicht (npm, node). Wenn es mit ein und dem selben Verzeichnis in einem Container geht und im anderen nicht, muss ich die Unterschiede der Container ermitteln...
Ich schaue mir das gerne heute Abend mal an, aber im Moment kann ich mir nicht erklären warum das so auftritt. Einzige logische Erklärung wäre, dass eine neuere node oder npm version den code vom iobroker anders intrepretiert...Viele Grüße aus "King's Landing",
André -
Hallo André,
danke für die Rückmeldung. Genieße mal deinen Urlaub. Läuft ja soweit alles.
Ich werde mal die Tage ein Issue auf Github erstellen.
Bis dann,
Thorsten
-
Zunächst guten Tag sowie vielen Dank für den tollen und inzwischen über 1000 Einträge langen Thread (eine super Gute-Nacht-Lektüre).
Leider habe ich ebenfalls Probleme mit dem Aufsetzen von ioBroker mittels Portainer auf der DS218+. Aufgrund der leidigen und komplizierten Lan/Port-Einstellungen bei dem Telekom Speedport W724V habe ich auf die einfach Einrichtung mit Host-Zugang der 3.0.2beta Version von buanet/iobroker gehofft. Jedoch bekomme ich folgende Fehlermeldung und die Admin-Oberfläche von ioBroker ist nicht unter "http://[IP-Adresse]:8081" erreichbar.
Fehler im Container log:
Hat jemand eine Hilfestellung hierzu? Vielen Dank vorab!
Viele Grüße
Stephan -
Hallo liebe Community,
hat jemand ioBroker mit WSL2 und Docker Desktop Beta am laufen ?
Habe Win10 im Fastring installiert und der Container läuft soweit.Kitematic lässt leider kein zusätzliches Mountdir zu oder ich finde es nicht.
Mit Portainer war ich auch nicht erfolgreicher.Wie integriert man den Mountbefehl für mein individuelles Verzeichnis ? Muss im Dockerfile das Verzeichnis /opt/iobroker definiert werden und man kann das dann individuell zuweisen ?
Oder kann man vor dem start dem Container/dem Image den Mountbefehl zuweisen ?
mein Ziel: buanet/iobroker image laden, mount hinzufügen bevor das startstript im container alles ins interne verzeichnis schreibt und den container aufbläht,
mit Hostordner D:\test\iobroker den container starten und die daten außerhalb des Containers lassen.Grüße Michael
-
@Dancekid so hab ich es laufen....
wenn ich dran denke mach ich paar screenshots heute abend
-
Und du hast mich doch vergessen
-
@Dancekid jaaaaaaaaa
so hab ich es... Ordner im docker angelegt..
-
nur wie kann ich ein Hostverzeichnis D:\Otto\iobroker\ als Volume oder Mountpoint /opt/iobroker/ mitgeben ?
gesuchte Variante: Pfad in Kitematic per Startparameter ??? Wo stellt man das ein ?
Ich kenne derzeit nur die Möglichkeit beim manuellen Start über die Powershell den Mount Parameter mitzugeben.
-
Hallo liebe Community,
ich habe ein Beispiel rausgesucht:
Portainer zeigt als Container zum Beispiel automatisch ein Verzeichnis "data" in Kitematic an und lässt sich direkt auf einen Ordner mappen.
Wie kann ich das für den Container iobroker umsetzen ?@andre
du hast geschrieben, dass man den Ordner /opt/iobroker jetzt direkt mit einem hostlaufwerk mappen kann.
so wie in portainer wird mir allerdings kein verzeichnis angezeigtHabe eine Definition für das Dockerfile gefunden:
Volume ["/opt/iobroker"]
sollte im Dockerfile stehen ?Grüße Michael
-
Nanu, ist der wget Befehl aus dem buanet Container wieder herausgenommen worden?
edit, doch scheint da zu sein, dann muss mein Problem woanders liegen.
-
@dtp sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
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.
Ich habe gestern mal versucht den Fehler zu reproduzieren. Container erstellt und Updates hoch und runter, auf verschiedenen Wegen. Alles ohne Probleme.... Habe auch ein V2-Verzeichnis erstellt und in V3 eingebunden. Bei mir problemlos.
Brauche da wohl noch ein bisschen mehr Input.MfG,
André -
@Unfassbar sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:
Error: listen EADDRINUSE 127.0.0.1:9000
Bei dir ist der Port 9000 bereits belegt....
MfG,
André -
Gemeint ist: Man kann seit kurzem einfach einen leeren Ordner unter /opt/iobroker in den Docker Container einbinden. Das Startscript sorgt dann für den Rest.
Wie du den Ordner über Kitematic einbindest, kann ich dir nicht sagen. Im Dockerfile habe ich dazu nichts definiert. Man kann natürlich den Container auch ohne Mount aufsetzen. Allerdings liegen dann alle ioBroker-Daten innerhalb des Containers. Bedeutet: Container gelöscht = ioBroker-Daten gelöscht...Das Hinzufügen eines mounts/ Volumes gehört zu den Docker Basics:
https://docs.docker.com/v17.09/engine/admin/volumes/bind-mounts/
MfG,
André -
edit, verlesen.
-
Hat einer von euch im Docker schon den Adapter Radar2 zum laufen bekommen?
Ich habe da so meine Probleme.
Irgendwie bricht der immer ab :host.iobroker 2019-08-19 20:42:05.041 info Restart adapter system.adapter.radar2.0 because enabled host.iobroker 2019-08-19 20:42:05.039 error instance system.adapter.radar2.0 terminated with code null () host.iobroker 2019-08-19 20:42:05.039 warn instance system.adapter.radar2.0 terminated due to SIGSEGV radar2.0 2019-08-19 20:42:03.119 info starting. Version 1.0.7 in /opt/iobroker/node_modules/iobroker.radar2, node: v8.16.0 host.iobroker 2019-08-19 20:42:02.350 info instance system.adapter.radar2.0 started with pid 18917 host.iobroker 2019-08-19 20:41:32.334 info Restart adapter system.adapter.radar2.0 because enabled host.iobroker 2019-08-19 20:41:32.333 error instance system.adapter.radar2.0 terminated with code null () host.iobroker 2019-08-19 20:41:32.333 warn instance system.adapter.radar2.0 terminated due to SIGSEGV radar2.0 2019-08-19 20:41:30.352 info radar2 initialization started... radar2.0 2019-08-19 20:41:30.253 info starting. Version 1.0.7 in /opt/iobroker/node_modules/iobroker.radar2, node: v8.16.0
Die Anweisungen aus dem Thread RADAR2 dazu habe ich befolgt :
Auf Linux sollte das tool arp-scan und libcap2-bin sowie einige Bluetooth treiber installiert werden installiert werden und die Rechte von arp-scan und node angepasst werden. Bei Debian (Raspi-Stretch, Ubuntu, ...) schaut das so aus: sudo apt-get install libcap2-bin arp-scan bluetooth bluez libbluetooth-dev libudev-dev net-tools sudo setcap cap_net_admin,cap_net_raw,cap_net_bind_service=+eip $(eval readlink -f `which arp-scan`) sudo setcap cap_net_admin,cap_net_raw,cap_net_bind_service=+eip $(eval readlink -f `which node`) sudo setcap cap_net_admin,cap_net_raw,cap_net_bind_service=+eip $(eval readlink -f `which arp`) sudo setcap cap_net_admin,cap_net_raw,cap_net_bind_service=+eip $(eval readlink -f `which hcitool`) sudo setcap cap_net_admin,cap_net_raw,cap_net_bind_service=+eip $(eval readlink -f `which hciconfig`) sudo setcap cap_net_admin,cap_net_raw,cap_net_bind_service=+eip $(eval readlink -f `which l2ping`) Bei Windows steht arp-scan nicht zur Verfügung und es wird nur node-ping verwendet. Der Rest kann ion der Adapter-Konfig eingestellt werden.
-
hab ich auch schon versucht. geht bei mir auch nicht.
container mit hoher priorität ausführen und den alten radar adapter benutzen
-
Moin Mädels,
meine ersten Gehversuche mit einer Synology plus Docker plus Iobroker.
Deshalb wohl erstmal eine leichte Frage
Ich habe 10GB verbaut. Überall auch auf der Startseite vom Iobroker wird es angezeigt.
Bei Instanzen oben stehen aber zusammengerechnet nur 5,7 GB.
Hab nix zugeteilt oder zugewiesen. -
@rostnagel danke für die Antwort.
den alten radar-Adapter muss ich dann mal suchen, in der Liste ist der ja nicht mehr, dann über GitHub.@haselchen
Ich sag jetzt einfach mal so, das ist so. Ich habe bei mir 16GB RAM verbaut und zusammengerechnet sehe ich nur 10GB oben in der Leiste.
In einer älteren Admin-Instanz stand da sogar nur Nonsens, also einfach ignorieren
Wenn Du den Adapter Info installiert hast, dann hast Du links in deinem Baumverzeichnis bzw auf dem Startverzeichnis den Punkt Info, da listet der dir auch Deine Hardware auf und da sehe ich dann auch 15.48 GB, passt.
Irgendwie hat die Admin-Instanz Probleme. -
Guten Morgen,
ich habe mir nun einige Tutorials zum iobroker auf der Synology durchgelesen und auch ausprobiert. Natürlich kommt man um das von @andre nicht herum. Doch wie auch hier einige schon bemerkt haben, funktioniert die Namensauflösung nicht (ich rede hier vom MACVLAN Netzwerk). Wenn ich dem iobroker_startup.sh "echo 'nameserver 8.8.8.8' >> /etc/resolv.conf" hinzufüge, funktioniert die Auflösung und das aktualisieren als auch das installieren der Packages funktioniert. Leider finde ich nirgends eine Beschreibung warum das so ist und warum nicht über den host aufgelöst wird. In der resolv.conf steht zu beginn "nameserver 127.0.0.11".Ich muss auch noch erwähnen, dass ich LAG verwende und dadurch bond0 die Schnittstelle ist. Auch läuft auf meiner DS1512+ ein DNS-Server der das Heimnetz versorgt.
Folgende Anleitungen habe ich zum Einrichten verwendet:
https://buanet.de/2019/05/iobroker-unter-docker-auf-der-synology-diskstation-v3/
http://blog.unltd-networx.de/iobroker-unter-docker-auf-synology-nas-installieren/
http://www.stueben.de/iobroker-im-docker-auf-der-synology-diskstation-im-gleichen-subnet/Gibt es hierfür eine Lösung, oder ist dies eine Einstellung in meiner DS, die dazu führt? Kann mir jemand bei diesem Problem helfen?
-
@whfor
Mhh, seltsam. Das höre ich zum ersten mal. Wüsste auch nicht wer hier schon mal angemerkt hat, dass Namensauflösung nicht funktioniert.
Eigentlich verwaltet Docker den DNS-Server selbst.
Der dockereigene DNS-Server ist 127.0.0.11, so wie es auch richtig in der resolv.conf steht.
Bei mir funktioniert das so auch einwandfrei. Ich kann aus dem Container heraus Namen auflösen.Wenn dein DNS Server vom Heimnetz auf deiner DS liegt, kann es allerdings sein, dass du in das Problem läuft, dass du vom MACVLAN nicht auf die DS zugreifen kannst, da beide IPs auf der selben physikalischen Netzwerkschnittstelle liegen.
Du könntest mal versuchen ein eigenen Bridge-Netzwerk zu erstellen (z.B. 172.18.0.0) und dies zusätzlich dem ioBroker-Container zuweisen. Eventuell erreicht dein Container dann auch wieder den DNS Server.... wäre jetzt so das, was ich aus dem Stand aus dem Ärmel schütteln konnte...
Weitere Infos zu Docker und DNS: https://docs.docker.com/v17.09/engine/userguide/networking/configure-dns/
MfG,
André