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

    • [erledigt] 15. 05. Wartungsarbeiten am ioBroker Forum

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [HowTo] ioBroker unter Docker auf Synology DiskStation

    This topic has been deleted. Only users with topic management privileges can see it.
    • L
      Logic93 @andre last edited by Negalein

      @andre said in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:

      @whfor Habe es auf meinem Testsystem zum Laufen gebracht. Vielleicht hilft dies hier:

      Hallo
      ich habe iobroker auf meinem Synology NAS als Docker Container laufen (erstellt nach dem in diesem Thread verlinkten Tutorial) und möchte gerne im node-red Adapter das Modul amazon-echo-hub (Modul von node-red) verwenden, um mit meinem Echo Dot 3 zu kommunizieren.

      Das node-red Modul muss den Echo bekanntermaßen ja zwingend auf Port 80 ansprechen. Da dieses node-red standardmäßig nicht möglich war Fehlermeldung: "unable to start on port 80" in node-red.
      Wollte ich in der Konsole von iobroker über den im obigen Post erwähnten Befehl:

      setcap 'cap_net_bind_service=+ep' `which node`
      

      node-red die Berechtigung erteilen Port 80 zu verwenden. Leider ohne Erflog beim Ausführen der Anweisung erhalte ich nur folgenden output in der Konsole:

      root@iobroker:/opt/iobroker# setcap 'cap_net_bind_service=+ep' `which node`
      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
      

      Zutr Lösung des Problems habe nochmals in Portainer nohmals einen aktuellen ioBroker-Container über "buanet/iobroker:latest" erstellt und darauf geachtet, dass unter Capabilities NET_BIND_SERVICE aktiviert ist, leider mit selbigen Ergebnis, dass mir beim Ausführen des Kommandos die oben genannte Fehlermeldung angezeigt wird.

      Mein Setup:
      Synology DS216+II (DSM 6.2.2)
      Docker:

      • Portainer 1.21.0 (bridge)
      • iobroker 3.6.12 (MACVLAN)

      capabilities.PNG
      network.PNG error-node-red.PNG info.PNG

      Woran könnte dieses jetzt liegen?
      Bestehen noch andere Möglichkeiten Port 80 für node-red freizugeben? Ich habe noch etwas von iptabels gelesen, ist dies mit Betrieb als Docker Image überhapt möglich, falls ja wo müsste ich diese setzten?
      ein starten von node-red mit root rechten über die Konsole mit sudo iobroker start node-red ist leider nicht Ausreichend, in node-red heißt es dann weiterhin "unable to start on port 80".

      Über Lösungsvorschläge bin ich dankbar.
      Grüße
      Andreas

      Mod-Edit: Vollzitat gekürzt! Bitte vermeidet Vollzitate! Siehe Forum Regeln, Punkt 2

      1 Reply Last reply Reply Quote 0
      • T
        tcfigge last edited by

        Hallo,
        ich habe meine Docker Instanz nach der "neuen" Anleitung aufgesetzt, weil in der alten Node und der Js Controller als Update angemahnt wurden...
        Habe die iobroker Instanz aber als host laufen.
        Jetzt nach 4-5 Tagen ist sie abgeschmiert und lässt sich nicht mehr starten.
        Eine neue Instanz an einem anderen Ort läuft an.
        Aber natürlich ohne meine Adapter.
        Fehler ist laut Log:
        b51167e9-6a47-4fa5-969c-c2e7d2e8c8b9-image.png

        Bin abseits einer Anleitung, leider als DAU zu betrachten und wäre für Hilfe dankbar!!!
        Einmal Starten um ein Backup laufen zu lassen, würde ja reichen...👼 🤦
        Gruß Thorsten

        T 1 Reply Last reply Reply Quote 0
        • D
          dtp last edited by

          Jemand zufällig eine Idee, wie ich das nachfolgende Problem mit wscat in den Griff bekomme?

          2019-12-28_15h58_33.png

          Brauch wscat für den Samsung.Tizen-Adapter, um einen Token von unserem TV zu empfangen.

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

            @dtp

            Vielleicht hilft es: google meint es muss global installiert werden. Deswegen das -g

            npm install -g wscat

            D 1 Reply Last reply Reply Quote 0
            • D
              dtp @haselchen last edited by

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

              npm install -g wscat

              Danke für den Tipp. Es war aber noch nicht die ganze Miete. Mit

              sudo npm install -g wscat
              

              hat's letztlich funktioniert.

              2019-12-29_16h50_07.png

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

                @andre said in [HowTo][Anleitung] Installation ioBroker in Docker auf Synology DiskStation:

                bridge:
                driver: bridge
                ipam:
                config:
                - subnet: 172.18.0.0/16
                gateway: 172.18.0.1
                ip_range: 172.18.0.1/24

                Geht das so ?

                version: '2.4'
                
                services:
                
                
                  
                  
                
                  mqtt:
                   restart: always
                   ports:
                     - "1884:1884"
                     - "9001:9001"
                   image: toke/mosquitto
                   networks:
                      fhem-network: {}
                   volumes:
                     - ./mqtt/config/:/mqtt/config/
                     - ./mqtt/log/:/mqtt/log/
                     - ./mqtt/data/:/mqtt/data/
                
                  portainer:
                    restart: always
                    image: portainer/portainer:1.21.0
                    volumes:
                      - ./portainer/:/data
                      - /var/run/docker.sock:/var/run/docker.sock
                    ports:
                      - "9000:9000"
                
                  deconz:
                    image: marthoc/deconz
                    container_name: deconz
                    network_mode: host
                    restart: always
                    volumes:
                      - /opt/deconz:/root/.local/share/dresden-elektronik/deCONZ
                    devices:
                      - /dev/ttyUSB0
                    environment:
                      - DECONZ_WEB_PORT=80
                      - DECONZ_WS_PORT=443
                      - DEBUG_INFO=5
                      - DEBUG_APS=0
                      - DEBUG_ZCL=0
                      - DEBUG_ZDP=0
                      - DEBUG_OTAU=0
                  
                
                  mymediaforalexa:
                    restart: always
                    image: bizmodeller/mymediaforalexa
                    ports:
                      - "52050:52050"
                      - "52051:52051"
                    volumes:
                      - ./Music:/opt/medialibrary \
                      - ./.MyMediaForAlexa:/opt/datadir
                      
                
                    networks:
                      fhem-network: {}
                
                  magic_mirro:
                    restart: always
                    image: bastilimbach/docker-magicmirror
                    ports:
                      - "85: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/pi/smarthome//iobroker:/opt/iobroker
                    networks:
                      macvlan0:
                        ipv4_address: 192.168.200.17
                      fhem-network: {}
                
                networks:
                
                  fhem-network:
                    driver: bridge
                
                  macvlan0:
                    driver: macvlan
                    driver_opts:
                      parent: eth0
                    ipam:
                      config:
                      - subnet: 192.168.200.1/24
                        gateway: 192.168.200.1
                        ip_range: 192.168.200.17/32
                
                
                

                Im docker compose. ?

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

                  @eve11 Hallo Heiko,
                  hast du die Version des Images gewechselt? Wie sieht deine Node-Version alt und neu aus (node -v)?
                  Falls du eine andere Major-Version verwendest, dann musst du auf jeden Fall reinstall.sh bzw. npm rebuild ausführen... Siehe dazu auch die offizielle ioBroker Doku zum Thema Node upgrade...

                  MfG,
                  André

                  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:

                    @andre Kannst du versuchen, das zu fixen?

                    Wenn du mir sagst was ich fixen soll? 🙂 Am liebsten per Issue auf Github....

                    MfG,
                    André

                    D 1 Reply Last reply Reply Quote 0
                    • K
                      Kunibert last edited by

                      HELP!
                      Ich hoffe, ich habe es nicht übersehen, dass jemand anderes das Problem bereits gepostet und gelöst hat...
                      Habe die V4.0 des Containers heute gestartet und obwohl ich eigentlich mit dem JS-Controller längst auf der Version 2.x war bin ich nun wohl wieder auf der V.1.5.14 gelandet.
                      iobroker-error js-controller.PNG

                      Ich habe jetzt diese Befehle durch und probiert:

                      • reinstall.js > Installiert nur V.1.5.14 neu
                      • npm install ioBroker/ioBroker.js-controller > Installiert auch nur V.1.5.14 neu. Habe ich mit Endung --production und ohne probiert.

                      Container habe ich nun mehrfach neu angelegt, alles ohne Erfolg.

                      Hattet ihr auch solche Probleme nach einem Container-Update? Und wie kann es sein, dass der js-controller nach dem Update einen älteren Stand aufweist? Und wie habt ihr es ggf. gelöst?
                      Komme jetzt nicht mehr auf die Admin-Oberfläche etc....

                      Lieben Dank für eure Hilfe!

                      K 1 Reply Last reply Reply Quote 0
                      • K
                        Kunibert @Kunibert last edited by

                        @Kunibert
                        Ok, habe es gefixt bekommen aber nur durch eine neue ioBroker-Hülle. Habe den Container neu erstellt und das letzte Backup (Backitup-Adapter) wiederhergestellt. Damit stimmt jetzt auch die js-controller-Version wieder. Dennoch irritiert mich, wie das Problem überhaupt entstehen konnte. Wieso sich auch immer der js-controller selbstständig downgegradet hat... Ich hoffe, das passiert beim nächsten Container-Update nicht mehr 😞

                        1 Reply Last reply Reply Quote 0
                        • T
                          tcfigge @tcfigge last edited by

                          @tcfigge
                          Hallo,
                          ich bin mit meinem Problem nicht weiter gekommen.
                          Wenn ich einen neuen Container starte, dann meine Ordner aus der alten Struktur einfach rüberkopiere, startet er zwar,meine installierten Adapter tauchen auch unter ADAPTER als installiert auf, aber nicht unter Instanzen...
                          Denn alten Container einen js.controller zu verpassen scheitert auch kläglich...
                          62dcc424-7d8c-49e7-b3e1-cc2bd27f94ba-image.png
                          Hab so ziemlich alles an Befehlen eingegeben was ich finden konnte...👼 😧
                          Kann mich jemand in die richtige Richtung schupsen?
                          Danke!

                          andre 1 Reply Last reply Reply Quote 0
                          • T
                            Telefisch last edited by

                            Hallo Gemeinde...
                            aufgrund diverser Schwierigkeiten seit dem letzten Update habe ich mich entschlossen meinen Container (V1/2?) komplett neu aufzusetzen und ein das letzte bestehende Backup einzuspielen.
                            Portainer scheint ja nun state of the art zu sein und so schlage ich mich grade mit dem Netzwerk, bzw. mit der Entscheidung welches Netzwerk zu verwenden ist rum.
                            Leider ist im Tutorial nicht ein Wort zu den beiden "einfachen" Varianten verloren worden.
                            Also technisch scheint mir die MACVLAN Variante eh am besten aber da habe ich doch eine entscheidende Frage:
                            Meine WLAN-Teilnehmer, die mit dem iob kommunizieren (Modbus SPS, diverser China-Trödel, VIS etc.) liegen aktuell im Standard Heimnetzwerk, wie alle Teilnehmer.
                            Wenn ich nun dieses MACVLAN verwende baue ich doch im Prinzip ein komplett neues Netzwerk auf mit eigenem Adressbereich.
                            Das heißt ich muss alle Teilnehmer auch an dieses neue Netzwerk anknoten?
                            Also von jedem Familienmitglied auch das Handy in ein anderes Netz heben?
                            Irgendwie verstehe ich im Moment noch so gar nicht wie das funktioniert und ob der Aufwand (wenn es so ist wie ich glaube) im Verhältnis zum Nutzen steht. (Wer macht da eigentlich das Routing?)
                            Bisher läuft der Docker mit host. Das war das einzige was seinerzeit problemlos lief mit nahezu allen Adaptern.

                            Kleine Info zu meinem Verständnislevel:
                            Bei mir ist der ioBroker kein Fulltime-Hobby!
                            Ich habe sicherlich deutlich mehr als Noob-Level, bin aber weit vom Nerd entfernt.
                            Also bitte ich um Hilfe für einen Netzwerk- und Linux-Legasteniker.

                            Danke....

                            StM47 andre 2 Replies Last reply Reply Quote 0
                            • StM47
                              StM47 @Telefisch last edited by

                              @Telefisch

                              Ich hatte mich auch für Portainer entschieden, habe es aber wieder Beiseite geschoben, da es für normale ioBroker Installationen nicht essentiell ist.

                              Gerade die Netzwerkeinstellungen sind nicht unbedingt etwas für Laien.

                              Darum habe ich ioBroker einfach wie gehabt, nur im Docker als Host installiert und alles funktioniert wunderbar.

                              Bildschirmfoto 2020-01-04 um 18.29.58.png

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

                                @tcfigge
                                Sieht aus als würden deine Befehle am "sudo" scheitern. Welche netzwerkkonfiguration nutzt du? MACVLAN. Bridge oder Host?
                                Hast du mal ein "npm rebuild" versucht?

                                MfG,
                                André

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

                                  @Telefisch
                                  Hallo,
                                  MACVLAN ist nur für fortgeschrittene Nutzer zu empfehlen. Hier benötigt man schon ein wenig Hintergrundwissen zum Thema Netzwerk....
                                  Hast du mal hier (https://buanet.de/knowledge-base/networking/) gestöbert? Im Tutorial war leider kein Platz um ausführlich auf die Möglichkeiten in Bezug auf Netzwerk ein zu gehen. Daher der Hinweis, dass ich es in die Knowledge Base ausgelagert habe...

                                  Was MACVLAN angeht, hast bist du gedanklich irgendwo falsch abgebogen. Es wird hier kein anderes Netz angelegt. Du definierst nur einen speziellen Netzbereich (im Tutorial genau eine Adresse) aus deinem Heimnetz. Dieses Netz/ bzw. die eine Adresse wird dann zusätzlich zu der Adresse deiner DS virtuell auf die Netzwerkschnittstelle der DS gelegt. Über die IP der DS erreichst du dann die DS und über die MACVLAN-Adresse den ioBroker..

                                  Lange Rede, kurzer Sinn, für dich ist es wahrscheinlich besser die Host-Variante zu verwenden.
                                  Dabei verwendet der ioBroker die selbe IP-Adresse wie deine DS. Von außen fühlt es sich dann in etwa so an, als würde der ioBroker nur eine App auf der DS sein....
                                  Einrichtung ist relativ simpel. Einfach als Netzwerk bei der Erstellung des Containers das Netzwerk "host" auswählen...

                                  Anders als @StM47 empfehle ich grundsätzlich Portainer als Weboberfläche für Docker. Hier hat man einfach mehr Möglichkeiten.

                                  MfG,
                                  André

                                  T 1 Reply Last reply Reply Quote 0
                                  • T
                                    Telefisch @andre last edited by Telefisch

                                    @andre Danke für Deine Antwort...
                                    Naja so ein Noob bin ich nun auch nicht. Ich hatte lediglich ein Verständnisproble mit der Aussage "ich vertraue den chinesischen Netzwerkteilnehmern nicht", die ich in dem Zusammenhang irgendwo gelesen habe.
                                    Da war ich von ausgegangen, dass hier ein echtes VLAN angelegt wird.
                                    Also wird hier im Grunde nur eine virtuelle Netzwerkschnittstelle angelegt.
                                    Das würde sich im Grunde dann ja lediglich auf die VIS-User auswirken.

                                    Ich habe aber grade ein viel größeres Problem.
                                    Ich habe das Image meines "alten" Docker aktualisiert und kann jetzt einige Adapter nicht mehr aktualisieren.
                                    Jetzt mache ich schon seit zwei Tagen damit rum das irgendwie grade zu biegen, u.a. mit diesen HowTos:
                                    https://forum.iobroker.net/topic/22867/how-to-node-js-für-iobroker-richtig-updaten/2
                                    Blöd ist nur, dass die hälfte der Befehle so gar nicht funktioniert.
                                    Es ist ja richtig, dass ich das im Terminal des Docker-Container ausführen muss?
                                    Ich bekomme da solche Meldungen:
                                    root@iobroker:/opt/iobroker# npm rebuild
                                    sudo: Hostname iobroker kann nicht aufgelö st werden
                                    sudo: Die Autit-Nachricht kann nicht gesendet werden: Unbekannter Fehler -1
                                    sudo: Pam_open_session: Systemfehler
                                    sudo: Regelwerks-Plugin konnte Sitzung nicht initialisieren

                                    "curl -sL https://iobroker.net/fix.sh | bash -" funktioniert nur, wenn das letzte "-" Zeichen wegfällt.
                                    Sonst kommt curl: Option -; is unknown
                                    Ist das richtig? was bedeutet das letzte -?

                                    Sowas und ähnliches habe ich sehr häufig.
                                    Irgend eine Idee, wie ich am besten vorgehe?

                                    PS: Im Moment bin ich noch direkt im Docker, ohne portainer

                                    1 Reply Last reply Reply Quote 0
                                    • T
                                      Telefisch @StM47 last edited by Telefisch

                                      @StM47 sooo gewaltig kompliziert ist das nun auch wieder nicht.

                                      Ich weiß wie mein Netzwerk aufgebaut ist, welche Adressen verfügbar sind (ohne vom DHCP Server verwendet zu werden).
                                      Welche Netzwerkschnittstelle meine DS hat ist auch nicht so kompliziert herauszufinden.
                                      Da meines Wissens nach Linux immer mit eth0 beginnt, kann es nur eth0 oder eth1 sein.
                                      Ein Blick in die Netzwerk-Einstellungen verrät mir, dass das Haupt-Netzwerk an Port 1 hängt, somit ist die Wahrscheinlichkeit dass es eth0 ist schonmal sehr hoch.

                                      DS-Netzwerkschnittstelle.PNG

                                      Mein Verständnisproblem war, dass ich davon ausgegangen war, dass damit ein komplettes VLAN angelegt wird.
                                      Ich probier das mal, Versuch macht kluch...

                                      T 1 Reply Last reply Reply Quote 0
                                      • T
                                        Telefisch @Telefisch last edited by Telefisch

                                        Also das hat ganz hervorragend geklappt.
                                        Jetzt hab ich nur noch das Problem, dass einige Adapter nicht upgedatet werden können, darunter der Admin 😞

                                        @andre kann man das volume im nachhinein im portainer ändern?
                                        Zumindest die Kommandozeile scheint da gut zu laufen und schmeisst mir beim manuellen update des cloud-adapters einen Fehler, der auf die Rechte hindeutet.
                                        Ich würde dann vorerst nochmal das iobroker-mount Verzeichnis aus meiner alten Installation probieren.

                                        Edit: hab nen neuen Container mit dem „alten“ Volume-Pfad angelegt, bekomme aber immernoch komische Fehler:

                                        41031CC2-5CFB-4D45-B3BE-37D82F1B2837.jpeg

                                        andre 1 Reply Last reply Reply Quote 0
                                        • T
                                          tcfigge @andre last edited by

                                          @andre
                                          Hallo andre!
                                          Danke für die Hilfe!
                                          Die Container laufen im HOST.
                                          npm rebuild:
                                          3ee47d90-ec10-40f7-b418-ea5356f7895d-image.png

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

                                            @Telefisch
                                            Wie du schon raus gefunden hast, muss man bei Docker in den meisten Fällen einen neuen Container anlegen. Sollte aber auch kein riesen Ding sein. Dazu gibt es ja schließlich den "Edit/ Duplicate" Button im Portainer....

                                            Was deinen Fehler aus dem Screenshot angeht, da würde ich die Dateien einfach per Hand löschen/ umkopieren und nochmal versuchen... Sieht mir nicht nach nem großen Ding aus...

                                            MfG,
                                            André

                                            T 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

                                            660
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

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