Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. ioBroker Allgemein
    4. [HowTo] ioBroker unter Docker auf Synology DiskStation

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    [HowTo] ioBroker unter Docker auf Synology DiskStation

    This topic has been deleted. Only users with topic management privileges can see it.
    • arteck
      arteck Developer Most Active @Dancekid last edited by

      @Dancekid jaaaaaaaaa

      5542e5e4-c6b6-4a01-b688-f1afef6213d5-grafik.png

      so hab ich es... Ordner im docker angelegt..

      1 Reply Last reply Reply Quote 0
      • D
        Dancekid last edited by

        @arteck

        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.

        1 Reply Last reply Reply Quote 0
        • D
          Dancekid last edited by Dancekid

          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 angezeigt 😞

          Habe eine Definition für das Dockerfile gefunden:
          Volume ["/opt/iobroker"]
          sollte im Dockerfile stehen ?

          Grüße Michael

          andre 1 Reply Last reply Reply Quote 0
          • S
            Solear last edited by Solear

            Nanu, ist der wget Befehl aus dem buanet Container wieder herausgenommen worden?

            edit, doch scheint da zu sein, dann muss mein Problem woanders liegen.

            1 Reply Last reply Reply Quote 0
            • andre
              andre Developer @dtp last edited by

              @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é

              S 1 Reply Last reply Reply Quote 0
              • andre
                andre Developer @Unfassbar last edited by

                @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é

                1 Reply Last reply Reply Quote 0
                • andre
                  andre Developer @Dancekid last edited by

                  @Dancekid

                  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é

                  1 Reply Last reply Reply Quote 0
                  • S
                    Solear @andre last edited by Solear

                    edit, verlesen.

                    1 Reply Last reply Reply Quote 0
                    • tugsi
                      tugsi last edited by

                      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.
                      
                      R 1 Reply Last reply Reply Quote 0
                      • R
                        rostnagel @tugsi last edited by

                        @tugsi

                        hab ich auch schon versucht. geht bei mir auch nicht.

                        container mit hoher priorität ausführen und den alten radar adapter benutzen 😉

                        tugsi 1 Reply Last reply Reply Quote 0
                        • haselchen
                          haselchen Most Active last edited by

                          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.

                          1 Reply Last reply Reply Quote 0
                          • tugsi
                            tugsi @rostnagel last edited by tugsi

                            @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.

                            1 Reply Last reply Reply Quote 1
                            • W
                              whfor last edited by

                              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?

                              andre 1 Reply Last reply Reply Quote 0
                              • andre
                                andre Developer @whfor last edited by

                                @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é

                                W 1 Reply Last reply Reply Quote 2
                                • W
                                  whfor @andre last edited by

                                  @andre das ist faszinierend, erst als ich dies geschrieben habe, fiel mir auf das im DSM Netzwerkeinstellungen der DNS Server auf sich selbst verwies. Dies funktioniert ja soweit auch, bis man eben ein macvlan erstellt. Nun habe ich dies korrigiert und alles läuft super.

                                  Was ich noch machen muss ist der test mit dem bridge Network. Wäre super wenn ich über dies den Zugriff auf die NAS bekomme.

                                  Ich hoffe man kann verstehen was ich da geschrieben habe.

                                  P.S. Der Beitrag in diesem forum ist https://forum.iobroker.net/post/150005

                                  1 Reply Last reply Reply Quote 0
                                  • W
                                    whfor last edited by

                                    hallo,
                                    nun, da der Container (eigentlich) gut läuft, hab ich den node-red adapter installiert und versucht über alexa-local, alexa-home und amazon-echo-hub ein Device zu erstellen. Leider funktioniert keines dieser Pakete. Erst mit dem amazon-echo-hub, habe ich herausgefunden das node-red nicht auf port 80 hört und Alexa ihn daher nicht erkennt. Dabei kommt die msg: error "Error: listen EACCES 0.0.0.0:80". So weit ich in Erfahrung bringen konnte, hat dieses nicht die richtige Berechtigung.

                                    Hat von euch schon jemand diesen Fehler und konnte ihn beheben? Dieser Fehler hat nicht direkt was mit der Anleitung zutun, dennoch wird oft auf ein mögliches Problem mit docker oder anderer Software verwiesen. Daher meine Hoffnung hier Hilfe zu erhalten.

                                    andre 1 Reply Last reply Reply Quote 0
                                    • andre
                                      andre Developer @whfor last edited by

                                      @whfor
                                      Zwei Mögliche Probleme:

                                      Entweder der Port 80 ist bereits von einer anderen Applikation belegt.

                                      Oder du bzw. die Applikation hat keine Root-Rechte und kann daher keine Ports kleiner 1024 öffnen.

                                      ...eventuell wird es auch noch notwendig, dass du im Container bestimmte Capabilities setzt, Stichwort "setcap". Dazu gab es hier im Thread auch schon >>> was.

                                      MfG,
                                      André

                                      W 1 Reply Last reply Reply Quote 0
                                      • W
                                        whfor @andre last edited by

                                        @andre
                                        leider hatte ich das bereits herausgefunden. Bei setcap, so wie du es beschrieben hast kommt der Fehler:

                                        Failed to set capabilities on file `/usr/bin/node' (Operation not supported)
                                        The value of the capability argument is not permitted for a file. Or the file is not a regular (non-symlink) file

                                        Das node red oder andere module mit dem User 1000 laufen ist leider auch klar. Wie ich dies jedoch ändere nicht. Dumm nur, das wenn ich mit iptables die Weiterleitung mache, Alexa es immer noch nicht erkennt.

                                        andre 1 Reply Last reply Reply Quote 0
                                        • C
                                          cburghardt last edited by

                                          @andre kurze Rückfrage zu den Versionen. Ich wollte eigentlich meinen vorhandenen 3.0 container mal wieder mit dem letzten Stand aktualisieren, aber das steht noch auf debian:latest oder? Das würde mir ja dann Debian 10 bringen, das wäre schlecht. Muss ich auf die beta upgraden?

                                          andre 1 Reply Last reply Reply Quote 0
                                          • andre
                                            andre Developer @whfor last edited by

                                            @whfor Im Moment bekomme ich absolut keinen Zugang zu deinem Problem.... setcap, User 1000, iptables???
                                            Am Besten wir fangen nochmal ganz von vorne an. Schreibe genau was du vor hast und was du gemacht hast (nicht ala "wie du es beschrieben hast").
                                            Screenshots von Configs helfen manchmal wunder. Außerdem wäre es interessant was für ein Setup du hast: MACVLAN? Version (beta/ latest), usw...

                                            Meine Testumgebung ist bereit. Nur so zum Spaß habe ich gerade mal den NodeRed-Adapert installiert und auf port 80 gelegt. Funktioniert schonmal...

                                            @whfor sagte in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:

                                            Das node red oder andere module mit dem User 1000 laufen ist leider auch klar.

                                            Was meinst du damit? Wo eckst du damit an? Im neuen Beta kommt demnächst eine ENV dazu mit der gu dann uid und gid individuell anpassen kannst... Für Synology-user sollte das aber eigentlich keine Rolle spielen...

                                            MfG,
                                            André

                                            W 1 Reply Last reply Reply Quote 0
                                            • First post
                                              Last post

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate
                                            FAQ Cloud / IOT
                                            HowTo: Node.js-Update
                                            HowTo: Backup/Restore
                                            Downloads
                                            BLOG

                                            573
                                            Online

                                            31.9k
                                            Users

                                            80.1k
                                            Topics

                                            1.3m
                                            Posts

                                            buanet diskstation docker iobroker synology
                                            248
                                            2854
                                            1432388
                                            Loading More Posts
                                            • Oldest to Newest
                                            • Newest to Oldest
                                            • Most Votes
                                            Reply
                                            • Reply as topic
                                            Log in to reply
                                            Community
                                            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                            The ioBroker Community 2014-2023
                                            logo