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.
    • andre
      andre Developer last edited by

      @tstueben:

      Dann werde ich am Wochenende einmal Portainer installieren. Ich bin gespannt wie das aussieht und was es kann.

      Ich hoffe der Composer wird auch unterstützt. Den nutze ich um deinen ioBroker Container für meine Bedürfnisse anzupassen und ich kann auf Knopfdruck eine neue ioBroker Umgebung mit seperatem Redis und Asterisk Container anlegen

      VG

      Stübi `

      Genau das ist das Ziel. 🙂 Iobroker mit einem Mausklick. Docker compose funktioniert. Heißt bei Portainer "Template" bzw. "Stack Template". Ebenso einfach ist das Anlegen von Macvlan…

      MfG,

      André

      Gesendet von unterwegs...

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

        @andre:

        …

        Wie auch immer. Ich werde mich wohl vom Host-Modus verabschieden und dafür in einer neueren Version meiner Anleitung sowohl auf den Bridge-Modus als auch auf eine Lösung mit macvlan (eigene IP für den Container) eingehen. Außerdem forciere ich aktuell das Thema Portainer und die Möglichkeit mit Templates zu arbeiten um das erstellen eines ioB Containers noch einfacher zu machen...

        --- `

        André, cooler Tipp mit Portainer. Echt klasse, endlich eine anständige Docker Admin auf der Synology !!

        1 Reply Last reply Reply Quote 0
        • S
          Shwowak last edited by

          @andre:

          Hallo Christian,

          ich vermute mal, dass dein Container immer wieder beendet wird. Dafür habe ich im beta einen Fix gebastelt. Eigentlich war mein Container ja nur für Docker auf Synology DSM gedacht. Da tritt der Fehler nicht auf.

          Andere Docker Installationen beenden hingegen Container in denen kein Prozess im Vordergrund läuft automatisch. Um dem entgegen zu wirken habe ich das hier ins Startschritt eingebaut:

          https://github.com/buanet/docker-iobrok … 8770caeeef

          Vielleicht hilft das auch bei dir.

          Lass alles per Docker compose up -d erstellen.

          MfG,

          André `

          Habe das gleiche Problem habe es aber nicht verstanden , was ich machen muss damit IoBroker startet.

          /opt/scripts/iobroker_startup.sh: 31: /opt/scripts/iobroker_startup.sh: cannot create /opt/scripts/docker_iobroker_log.txt: Permission denied

          1 Reply Last reply Reply Quote 0
          • S
            Shwowak last edited by

            @duffbeer2000:

            Hallo André,

            das war des Rätsels Lösung! Ich weiß nicht warum mir das nicht sofort aufgefallen ist. Das ein Container beendet wird wenn kein Prozess im Vordergrund läuft ist meines Wissens Standard. Zumindest hat das in der Arbeit der Docker Consultant behauptet. 😉

            P,S,; Hab dir mal noch ne PN geschickt.

            Gruß

            Christian `

            Habe das gleiche Problem mein IoBroker startet nicht … Meine Fehlermeldung /opt/scripts/iobroker_startup.sh: 31: /opt/scripts/iobroker_startup.sh: cannot create /opt/scripts/docker_iobroker_log.txt: Permission denied

            Lass alles per docker compose up -d erstellen.

            iobroker:

            restart: always

            build: iobroker

            privileged: true

            stdin_open: true

            tty: true

            depends_on:

            • fhem

            ports:

            #- "1880:1880" #node-red

            #- "1883:1883" #mqtt

            • "2001:2001" #homematic

            • "8081:8081" #iobroker admin

            • "8282:8282" #flot

            • "8088:8088" #terminal

            • "8284:8284" #socketIO

            • "8123:8123" #homekit

            • "50005:50005" #Multihost

            • "9000:9000" #Multihost

            #Multihost

            volumes:

            • ./iobroker:/opt/iobroker

            • ./iobroker/scripts:/opt/scripts

            hostname: iobroker

            image: buanet/iobroker

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

              Hi Shwowak,

              dein Probkem ist ein anderes, der Container hat angeblich keine Schreibrechte im Ordner /opt/scripts (Pfad im Container) bzw. auf deiner Synology im Ordner /iobroker/scripts.

              Folgender Abschnitt ist interessant:

              volumes:

              • ./iobroker:/opt/iobroker

              • ./iobroker/scripts:/opt/scripts

              Was passiert denn wenn du den zweiten Bindmount weglässt? Also die Zeile ./iobroker/scripts:/opt/scripts mal entfernen und dann testen.

              Gruß

              Christian

              1 Reply Last reply Reply Quote 0
              • S
                Shwowak last edited by

                Vielen Dank für deine schnelle Hilfe.

                Habe es mal geteste. Fehlermeldung ist weg.

                Starting ioBroker…

                Starting ioBroker done...

                Aber kann nicht auf 192... :8081 zugreifen. Die Website ist nicht erreichbar Die Webseite unter http://192.168.200.84:8081/

                1 Reply Last reply Reply Quote 0
                • S
                  Surfer2010 last edited by

                  Hallo,

                  erst mal danke für deine tolle Anleitung und die Mühe die du da rein steckst 🙂

                  Ich habe versucht dein Image zum laufen zu bekommen (auf einem Server - keine Synology) aber es klappt einfach nicht.

                  hier der log:

                  Startupscript running...
                  Directory /opt/iobroker is empty!
                  Restoring...
                  Restoring done...
                  First run preparation! Used Hostname: 8d71294e4a12
                  Renaming ioBroker...
                  /opt/scripts/iobroker_startup.sh: 19: /opt/scripts/iobroker_startup.sh: iobroker: Permission denied
                  First run preparation done...
                  Initializing Avahi-Daemon...
                  Restarting...
                  Stopping Avahi mDNS/DNS-SD Daemon: avahi-daemon.
                  Starting Avahi mDNS/DNS-SD Daemon: avahi-daemon.
                  Initializing Avahi-Daemon done...
                  Starting ioBroker...
                  Starting ioBroker done...
                  

                  Soweit sieht es eigentlich gut aus … aber es ist nicht erreichbar.

                  ich habe /opt/iobroker/ als Volume auf mein lokales System gemappt

                  Network Mode habe ich schon alles versucht von Bridge über Host ... klappt einfach nicht

                  wäre klasse wenn mir jemand helfen kann?!

                  P.S. wie kann ich schon bei starten des Containers sicherstellen dass ich die ioBroker WebOberfläche erreiche? das System läuft headless.

                  P.P.S. ich nutze dein Image mit dem Tag BETA (da das ja das script dabei hat, mit latest hatte sich der container in dauerschleife alle 11 Sek. neugestartet)

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

                    Hallo,

                    aktuell baue ich sehr viel um. Kann also durchaus passieren, dass mein beta mal broken ist…

                    Laut deinem Log gibt es Probleme beim rename. Irgendwas passt da auch mit den Berechtigungen nicht. Dein hostname sieht auch komisch aus...

                    Ich werde gleich mal mein beta build anstoßen. Vielleicht klappt es mit der Version mit den aktuellsten Änderungen...

                    Versuch mal in ner Stunde nochmal..

                    Alternative: latest und beim Starten tail - f /dev/null ausführen lassen... Dann startet der Container nicht immer neu...

                    MfG,

                    André

                    Gesendet von unterwegs...

                    1 Reply Last reply Reply Quote 0
                    • Negalein
                      Negalein Global Moderator last edited by

                      @andre:

                      [EDIT 28.09.2017] Achtung! Die Anleitung aus diesem Post wird nicht mehr gepflegt. Ich habe aus der gesamten Diskussion ein offizielles Tutorial erstellt und veröffentlicht, welches ich natürlich auch entsprechend pflegen und aktualisieren werde. Natürlich werde ich hier wie gewohnt weiter auf Fragen und Probleme antworten und ggf. weitere Punkte aus der Diskussion in das Tutorial einfließen lassen. 🙂

                      Die offizielle Anleitung liegt ab sofort hier: https://buanet.de/2017/09/iobroker-unte … skstation/ `

                      Hallo André!

                      Ich habe dein Image schon länger erfolgreich am laufen.

                      Ich hab es wie hier erklärt installiert. Inkl. Transfer-Verzeichnis, usw.

                      Allerdings stehe ich jetzt leider an.

                      Würde gern das aktuellste Image verwenden (zwecks Node 8, usw.)!

                      Wie muss ich da jetzt vorgehen?

                      Danke

                      filename="Synology_Nega_3 - Synology DiskStation.png" index="0">~~ filename="Synology_Nega_3 - Synology DiskStation (1).png" index="1">~~

                      1 Reply Last reply Reply Quote 0
                      • A
                        adlerauge1980 last edited by

                        @adlerauge1980:

                        Hallo Zusammen

                        Ich hatte Probleme mit meinem ioBroker auf dem Raspi (Dachte es seien Leistungsprobleme. Deshalb habe ich ioBroker komplett neu auf meiner Syno installiert. Dies gemäss der Anleitung von Andre…... `

                        Hallo Zusammen

                        Hab den Fehler bei mir gefunden. Ich habe erst jetzt das Prinzip vom Adapter verstanden, also Adapter aus eigener URL installieren heisst dass er dann nur als Adapter auftaucht, und dann noch eine instanz erzeugt werden muss.

                        Sorry…..

                        Was ich noch nicht gefunden habe ist, als welcher User der ioBroker mit der Version von Andre arbeitet.

                        Grüsse

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

                          Hallo Zusammen,

                          bitte entschuldigt, dass ich hier aktuell nur spärlich Support anbieten kann. Ich arbeite gerade sehr intensiv an der neuen Version des Containers die ich möglichst bald, mit samt eines neuen Tutorials, veröffentlichen möchte.

                          Das neue Tutorial wird dann auch einen Teil zum Update von node6 auf node8 enthalten.

                          Während ich noch an dem neuen Tutorial arbeite, ist das Image eigentlich soweit fertig und steht als aktuelle beta zur Verfügung. Ich würde mich freuen wenn sich ein paar Betatester fänden die mal testen ob das, was ich mir da ausgedacht habe auch außerhalb meiner Testumgebung funktioniert…

                          Die wichtigsten Neuerungen habe ich in der readme auf git schon beschrieben: https://github.com/buanet/docker-iobrok ... /README.md

                          Kurz zusammengefasst:

                          • Installation von zusätzlichen paketen per Umgebungsvariable

                          • Aktivierung von avahi für yahka per Umgebungsvariable nach Bedarf

                          • Mounten eines leeren oder bereits gefüllten Verzeichnisses unter /opt/iobroker möglich....

                          Über Feedback würde ich mich freuen, gerne auch per Mail (Kontakt über buanet,de). Eventuell kann ich das ein oder Andere dann noch ins Tutorial mit einfließen lassen.

                          Danke.

                          MfG,

                          André

                          1 Reply Last reply Reply Quote 0
                          • S
                            Surfer2010 last edited by

                            wenn ich mit

                            docker exec -it iobroker /bin/bash

                            in den Container einsteige und ps -aux | -less eingebe bekomme ich

                            USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
                            iobroker     1  0.0  0.0   4288   724 ?        Ss   15:56   0:00 sh /opt/scripts/iobroker_startup.sh
                            iobroker    10  0.2  0.5 923652 45696 ?        Sl   15:56   0:00 iobroker.js-controller
                            iobroker    11  0.0  0.0   5876   704 ?        S    15:56   0:00 tail -f /dev/null
                            iobroker    21  0.1  0.0  19884  3756 pts/0    Ss   16:00   0:00 /bin/bash
                            iobroker    30  0.0  0.0  38308  3096 pts/0    R+   16:01   0:00 ps -aux
                            iobroker    31  0.0  0.0   8200   856 pts/0    S+   16:01   0:00 less
                            
                            

                            das Webinterface ist aber nicht erreichbar.

                            Weder im Bridge Modus (mit exposed port 8081:8081) noch im Host modus.

                            Wäre super wenn mir jemand helfen könnte.

                            docker logs -f iobroker
                            Version: 2.0.4beta
                            Startupscript running...
                            Starting ioBroker...
                            Starting ioBroker done...
                            
                            
                            1 Reply Last reply Reply Quote 0
                            • andre
                              andre Developer last edited by

                              @Surfer2010:

                              wenn ich mit

                              docker exec -it iobroker /bin/bash

                              in den Container einsteige und ps -aux | -less eingebe bekomme ich

                              USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
                              iobroker     1  0.0  0.0   4288   724 ?        Ss   15:56   0:00 sh /opt/scripts/iobroker_startup.sh
                              iobroker    10  0.2  0.5 923652 45696 ?        Sl   15:56   0:00 iobroker.js-controller
                              iobroker    11  0.0  0.0   5876   704 ?        S    15:56   0:00 tail -f /dev/null
                              iobroker    21  0.1  0.0  19884  3756 pts/0    Ss   16:00   0:00 /bin/bash
                              iobroker    30  0.0  0.0  38308  3096 pts/0    R+   16:01   0:00 ps -aux
                              iobroker    31  0.0  0.0   8200   856 pts/0    S+   16:01   0:00 less
                              
                              

                              das Webinterface ist aber nicht erreichbar.

                              Weder im Bridge Modus (mit exposed port 8081:8081) noch im Host modus.

                              Wäre super wenn mir jemand helfen könnte.

                              docker logs -f iobroker
                              Version: 2.0.4beta
                              Startupscript running...
                              Starting ioBroker...
                              Starting ioBroker done...
                              
                              ```` `  Keine Adapter gestartet. Es müsste admin. 0 und discovery.0 laufen. Da der jscontroller läuft tippe ich auf hostname issue… Gib dem container beim Start mal nen hostname mit...
                              

                              MfG,

                              André

                              Gesendet von unterwegs...

                              1 Reply Last reply Reply Quote 0
                              • S
                                Surfer2010 last edited by

                                Also im "Bridge Modus" klappt es wenn ich einen Hostname angebe.

                                Das Problem ist weiterhin das Mappen des "config" Verzeichnisses also "/opt/iobroker/"

                                Sobald ich dieses auf meinen Server mappe kommt dieses Problem

                                /opt/scripts/iobroker_startup.sh: 37: /opt/scripts/iobroker_startup.sh: iobroker: Permission denied

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

                                  könnte mir jemand kurz erklären was dahinter steckt:
                                  ` > - Installation von zusätzlichen paketen per Umgebungsvariable

                                  • Aktivierung von avahi für yahka per Umgebungsvariable nach Bedarf `

                                  Was ist hier der Use-Case?

                                  Danke!

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

                                    @Surfer2010:

                                    Also im "Bridge Modus" klappt es wenn ich einen Hostname angebe.

                                    Das Problem ist weiterhin das Mappen des "config" Verzeichnisses also "/opt/iobroker/"

                                    Sobald ich dieses auf meinen Server mappe kommt dieses Problem

                                    /opt/scripts/iobroker_startup.sh: 37: /opt/scripts/iobroker_startup.sh: iobroker: Permission denied ` Zeile 37 im Startup Script ist das renaming vom iobroker. Das ist dein Problem. Auf einigen Systemen hat Docker Probleme mit der Verwendung von sudo im host Modus. Bei meiner disk Station ist das auch so. Auf einem Debian mit Docker geht's. Eine Lösung kenne ich nicht. Hab dazu schon nen ganzen Abend gegoogelt, ohne Erfolg.

                                    Im neuen Tutorial streiche ich den host Modus komplett. Wird ersetzt durch bridged oder macvlan… Sorry, eine andere Lösung habe ich nicht parat. Hängt irgendwie mit dem neuen setup von iobroker zusammen...

                                    MfG,

                                    André

                                    Gesendet von unterwegs...

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

                                      @dewenni:

                                      könnte mir jemand kurz erklären was dahinter steckt:
                                      ` > - Installation von zusätzlichen paketen per Umgebungsvariable

                                      • Aktivierung von avahi für yahka per Umgebungsvariable nach Bedarf `

                                      Was ist hier der Use-Case?

                                      Danke! ` Du kannst beim Erstellen des Containers Umgebungsvariablen angeben. Mit deren Hilfe kann der Container unterschiedlich konfiguriert werden.

                                      Mit PACKAGES kannst du Linux Pakete nachinstallieren die von bestimmten Adaptern benötigt werden. Da nicht jeder die selben Adapter benutzt fand ich es sinnvoll das individuell zu machen… Sonst würde das das Image nur unnötig aufblähen.

                                      Mit AVAHI kannst du einen Hilfsdienst aktivieren den du benötigst wenn du den yahka Adapter verwenden willst. Braucht auch nicht jeder, muss also nicht überall mit laufen...

                                      MfG,

                                      André

                                      Gesendet von unterwegs...

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

                                        @andre:

                                        @dewenni:

                                        könnte mir jemand kurz erklären was dahinter steckt:
                                        ` > - Installation von zusätzlichen paketen per Umgebungsvariable

                                        • Aktivierung von avahi für yahka per Umgebungsvariable nach Bedarf `

                                        Was ist hier der Use-Case?

                                        Danke! ` Du kannst beim Erstellen des Containers Umgebungsvariablen angeben. Mit deren Hilfe kann der Container unterschiedlich konfiguriert werden.

                                        Mit PACKAGES kannst du Linux Pakete nachinstallieren die von bestimmten Adaptern benötigt werden. Da nicht jeder die selben Adapter benutzt fand ich es sinnvoll das individuell zu machen… Sonst würde das das Image nur unnötig aufblähen.

                                        Mit AVAHI kannst du einen Hilfsdienst aktivieren den du benötigst wenn du den yahka Adapter verwenden willst. Braucht auch nicht jeder, muss also nicht überall mit laufen...

                                        MfG,

                                        André

                                        Gesendet von unterwegs... `

                                        Nettes Feature, ich finde es einfacher ein neues Image zu erstellen und dann die Pakete mitzunehmen. Man könnte dann auch noch eigene Skripte aufrufen und in denen Dein Startskript.

                                        Son nutze ich z.B. Dein Image

                                        # Dockerfile
                                        FROM buanet/iobroker:beta 
                                        RUN apt-get -y update && apt-get install -y vim libavahi-compat-libdnssd-dev ffmpeg net-tools dnsutils procps pkg-config libudev-dev build-essential curl unzip
                                        
                                        

                                        und dann Image erzeugen mit

                                        sudo docker build -t myiobroker .
                                        
                                        
                                        1 Reply Last reply Reply Quote 0
                                        • E
                                          EckartS last edited by

                                          Hallo,

                                          zunächst mal herzlichen Dank an andre für die Anleitung und der Support hier. Mit der Anleitung habe ich ioBroker ohne Probleme auf einer DS218+ aufgesetzt - auf dem RasPi3 war alles zu lahm geworden.

                                          Aber jetzt habe ich ein Problem, das an den Beitrag von RK62 weiter oben anknüpft:

                                          Wenn ich HTTPS mit den default-Zertifikaten einstelle (Let's Encrypt geht nicht, weil ich das mit Port 80 anderswo brauche), komme ich nicht mehr auf IP:8081! Chrome sagt: "Connection refused", Edge will auch nicht, und nur mit dem betagten IE11 wird mit angeboten, Sicherheitsbedenken zu ignorieren - dann habe ich Zugang. Also habe ich unter IE wieder auf HTTP umgestellt.

                                          Muss ich die default/private-Zertifikate manuell irgendwo in den Browsern installieren? (Eigentlich geht das doch automatisch?). Auf dem Raspberry hatte ich da keine Probleme, erst jetzt unter Docker.

                                          Irgendeine Passwort-Absicherung wäre schon wichtig; hier sind zwei spielwütige 14-Jährige im lokalen Netz unterwegs.

                                          Viele Grüße,

                                          EckartS

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

                                            Wenn Du eine eigne Domain besitzt, kannst Du das wie folgt lösen.

                                            • Du legst für die NAS und ioBroker Subdomains an wie z.B. nas.mydomain.de und iobroker.mydomain.de

                                            • Registrieren der Domain u. Subdomains bei Lets Encrypt (geht ja einfach über die NAS)

                                            • Anschließend richtest Du auf der NAS ein Reverseproxy für iobroker.mydomain.de (Port 443) der auf die IP Adresse deines ioBrokers mit Port 8081 zeigt.

                                            Damit kannst Du dann iobroker mit https://iobroker.mydomain.de und gültigem Zertifikat aufrufen. Du hast die Möglichkeit auch ioBroker mit Benutzerauthentifizierung und ohne https zu nutzen. Musst Du im Forum nach suchen. Ich glaube es geht folgendermassen :

                                            iobroker set admin.0 –ssl false

                                            VG

                                            Stübi

                                            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

                                            473
                                            Online

                                            31.8k
                                            Users

                                            80.0k
                                            Topics

                                            1.3m
                                            Posts

                                            buanet diskstation docker iobroker synology
                                            248
                                            2854
                                            1427137
                                            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