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

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

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

      @dos1973
      Hallo,
      wo genau liegt denn das Problem?

      Wenn du MACVLAN benutzt brauchst du keine Ports forwarden. Die Ports können also aus dener Container-Config raus.

      Wenn du von der Synology die SimpleAPI in deinem ioBroker-Container mit MACVLAN ansprechen möchtest, musst du dem Container ein zusätzliches Bridge-Netzwerk hinzufügen. Ich empfehle ein eigenes an zu legen, da im Default-Bridge-Netz z.B. keine Namensauflösung funktioniert.
      Wenn du das gemacht hast, dann musst du aus deinem Script heraus natürlich die IP-Adresse des Containers im Bridge-Netz verwenden. (Der Weg über das Heimnetz funktioniert ja nicht!)
      Wenn du ein eigenes Bridge-Netz angelegt hast, funktioniert der Aufruf auch mit dem Hostname des Containers....

      MfG,
      André

      Fichtendickicht D 2 Replies Last reply Reply Quote 2
      • D
        duffbeer2000 last edited by

        @andre @dos1973 Ah, jetzt ja. Da hatte ich nen Denkfehler. Den Port kannst also wieder rausmachen. 😉

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

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

          Wenn du von der Synology die SimpleAPI in deinem ioBroker-Container mit MACVLAN ansprechen möchtest, musst du dem Container ein zusätzliches Bridge-Netzwerk hinzufügen.

          Funktioniert das auch um eine Verbindung zwischen ioBroker und MariaDB im NAS-Host zu ermöglichen?

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

            @Fichtendickicht
            Ja, mit dieser Konfiguration macht man die Kommunikation zwischen Host (DS) und Container trotz MACVLAN möglich.

            Allerdings könnte man die MariaDB auch als Container laufen lassen. Dazu schreibe ich aktuell ein Tutorial (für fortgeschrittene User) zum Thema "Docker Compose über Portainer". Damit könnte man mit einem Konfigurationsfile mehrere Container aufsetzen (etwa Maria DB, Redis usw...), inkl. Netzwerkkonfiguration...

            MfG,
            André

            Fichtendickicht 1 Reply Last reply Reply Quote 1
            • Fichtendickicht
              Fichtendickicht @andre last edited by

              @andre
              Darf ich Dich um eine etwas genauere Auführung bezüglich der Erstellung einer eigenen Bridge bitten?
              Mein ioBroker hat ein MACVLAN, die Adresse 10.0.0.100 und liegt im selben Adressraum wie die Syno (10.0.0.79). Was muss ich denn da bitte eintragen, damit ein Zugriff auf den Host funktioniert?
              aa824a12-8f61-4fb5-a671-b4f563f09b68-grafik.png
              Ich kann im Netz leider keine vernünftige Anleitung finden.
              Danke!

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

                @Fichtendickicht
                Nichts vernünftiges im Web zu finden? Dann muss ich das heute Abend wohl mal ändern! #knowledgebase

                Da es sich um ein internes Netz handelt, kannst du da fast machen was du willst (soweit ich weiß). Ich orientiere mich immer an dem default bridge netz. In der Konfiguration sieht das dann so aus:

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

                MfG,
                André

                Fichtendickicht S 2 Replies Last reply Reply Quote 0
                • Fichtendickicht
                  Fichtendickicht @andre last edited by

                  @andre
                  Vielen Dank. Habe ich als eigenes Network konfiguriert und dem ioBroker hinzugefügt. Dann ioBroker neu gestartet.
                  Nur wie bekomme ich jetzt eine Verbindung zur MariaDB im NAS-Host?
                  e44825e5-7299-41ea-aa3b-966bede63453-grafik.png

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

                    @Fichtendickicht
                    Du musst dann natürlich auch die IP der DS aus dem Bridge Netzwerk im Adapter verwenden. Diese entspricht dem Gateway des Bridge-Netzwerks. Oder du verwendest den Hostnamen der DS.

                    MfG,
                    André

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

                      @andre
                      Tut mir Leid, das verstehe ich nicht. Wenn ich ein Bridge Netzweerk erstelle mit Deinen Werten bekomme ich keine Verbindung hin und kann auch als Gateway die IP meines DS nicht eintragen.
                      Wenn ich als Subnet 10.0.0.0/16 eintrage steht das im Konflikt mit der IP des ioBrokers (10.0.0.100).
                      Oder muss ich dem ioBroker einen anderen Adressbereich zuweisen damit ich in der Bridge den Adressbereich meiner DS verwenden kann?

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

                        @Fichtendickicht Du bist etwas falsch abgebogen:
                        Das Bridge-Netz darf nicht im gleichen Adressraum liegen wie die Syno.

                        Beim erstellen schlägt er ja z.B. schon was vor:
                        Subnet: 172.20.0.0/16
                        IP range 172.20.10.128/25
                        Gateway 172.20.10.11

                        So, jetzt hätte deine Syno die IP-Adresse 172.20.10.11, der ioBroker Container bekommt wenn er dem Bridge-Netz zugeordnet ist automatisch auch eine IP-Adresse in diesem Netzwerk. Und über diese beiden IP-Adressen kann dann der Container mit der Syno und umgedreht kommunizieren. Die IP-Adressen in diesem Bridge-Netz sind nicht von außen erreichbar, die kannst du somit auch nicht anpingen oder im Browser aufrufen.

                        Fichtendickicht 1 Reply Last reply Reply Quote 1
                        • Fichtendickicht
                          Fichtendickicht @duffbeer2000 last edited by

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

                          172.20.10.128/25

                          Klappt!

                          sql.0	2019-12-19 16:12:07.713	info	(662) enabled logging of modbus.0.holdingRegisters.23.3304_Temperature, Alias=false, 11 points now activated
                          sql.0	2019-12-19 16:12:07.712	info	(662) enabled logging of modbus.0.holdingRegisters.100.846_Battery_Time to Go (System), Alias=false, 10 points now activated
                          sql.0	2019-12-19 16:12:07.712	info	(662) enabled logging of modbus.0.holdingRegisters.100.845_Battery_Consumed Amphours (System), Alias=false, 9 points now activated
                          sql.0	2019-12-19 16:12:07.712	info	(662) enabled logging of modbus.0.holdingRegisters.100.844_Battery_state (System), Alias=false, 8 points now activated
                          sql.0	2019-12-19 16:12:07.712	info	(662) enabled logging of modbus.0.holdingRegisters.100.843_Battery_State of Charge (System), Alias=false, 7 points now activated
                          sql.0	2019-12-19 16:12:07.711	info	(662) enabled logging of modbus.0.holdingRegisters.100.842_Battery_Power (System), Alias=false, 6 points now activated
                          sql.0	2019-12-19 16:12:07.711	info	(662) enabled logging of modbus.0.holdingRegisters.100.841_Battery_Current (System), Alias=false, 5 points now activated
                          sql.0	2019-12-19 16:12:07.711	info	(662) enabled logging of modbus.0.holdingRegisters.100.840_Battery_Voltage (System), Alias=false, 4 points now activated
                          sql.0	2019-12-19 16:12:07.710	info	(662) enabled logging of modbus.0.holdingRegisters.100.819_AC_Consumption L3, Alias=false, 3 points now activated
                          sql.0	2019-12-19 16:12:07.710	info	(662) enabled logging of modbus.0.holdingRegisters.100.818_AC_Consumption L2, Alias=false, 2 points now activated
                          sql.0	2019-12-19 16:12:07.708	info	(662) enabled logging of modbus.0.holdingRegisters.100.817_AC_Consumption L1, Alias=false, 1 points now activated
                          sql.0	2019-12-19 16:12:07.244	info	(662) Connected to mysql
                          sql.0	2019-12-19 16:12:04.773	info	(662) starting. Version 1.9.4 in /opt/iobroker/node_modules/iobroker.sql, node: v10.17.0
                          host.iobroker	2019-12-19 16:11:54.566	info	instance system.adapter.sql.0 started with pid 662
                          host.iobroker	2019-12-19 16:11:52.103	info	instance system.adapter.sql.0 terminated with code null ()
                          

                          Ihr seid die Größten! Vielen Dank!
                          (was ich leider noch nicht ganz verstehe, ist der Umstand, dass eine beliebige Adresse im GAteway immer die Verbindung zur DS darstellt. Aber egal, jetzt funktioniert´s ja).

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

                            @Fichtendickicht Das Bridge Network wird auf dem Host erstellt. Daher ist der Host auch immer das Gateway.

                            Fichtendickicht 1 Reply Last reply Reply Quote 0
                            • Fichtendickicht
                              Fichtendickicht @duffbeer2000 last edited by

                              @duffbeer2000
                              Wenn ich das richtig verstehe, wird die bridge auf dem Host (meiner DS) erstellt obwohl ich das Netzwerk im Portainer errichtet habe.
                              Und weil die Bridge auf dem Host erstellt wird führt das auf der Bridge eingetragene Gateway immer zu dem Container welcher an die Bridge angeschlossen ist.

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

                                @andre
                                Ich kann auf Deiner Seite hier nichts posten, die Seite hört nicht auf zu laden.

                                Wenn ich nämlich den iobroker mit den von Dir vorgeschlagenen Volumes installieren will,
                                a55ac75d-d29b-4845-a629-07167a6b6029-grafik.png
                                bekomme ich folgende Fehlermeldung:

                                 ,
                                ------------------------------------------------------------,
                                ---------------     2019-12-19 18:07:03      ---------------,
                                ------------------------------------------------------------,
                                 ,
                                ------------------------------------------------------------,
                                -----       Welcome to your ioBroker-container!        -----,
                                -----          Startupscript is now running.           -----,
                                -----                Please be patient!                -----,
                                ------------------------------------------------------------,
                                 ,
                                ------------------------------------------------------------,
                                -----              Debugging information               -----,
                                -----                                                  -----,
                                -----                      System                      -----,
                                -----               arch:      x86_64                  -----,
                                -----                                                  -----,
                                -----                     Versions                     -----,
                                -----               image:     v4.0.0                  -----,
                                -----               node:      v10.17.0                -----,
                                -----               npm:       6.11.3                  -----,
                                -----                                                  -----,
                                -----                       ENV                        -----,
                                -----               AVAHI:     false                   -----,
                                -----               PACKAGES:  nano                    -----,
                                -----               SETGID:    1000                    -----,
                                -----               SETUID:    1000                    -----,
                                ------------------------------------------------------------,
                                 ,
                                ------------------------------------------------------------,
                                -----   Step 1 of 5: Installing additional packages    -----,
                                ------------------------------------------------------------,
                                 ,
                                The following packages will be installed: nano...,
                                Done.,
                                 ,
                                ------------------------------------------------------------,
                                -----   Step 2 of 5: Detecting ioBroker installation   -----,
                                ------------------------------------------------------------,
                                 ,
                                There is data detected in /opt/iobroker, but it looks like it is no instance of iobroker!,
                                Please check/ recreate mounted folder/ volume and restart ioBroker container.,
                                

                                Und es ist unerheblich ob ich mittels 9afff260-b4ea-4f2c-8ee5-0b5ff9ab8e8f-grafik.png den Container kopiere oder aus dem Image neu erstelle.

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

                                  @Fichtendickicht
                                  Ich glaube du musst dir ganz dringend noch ein paar Basics zu Docker aneignen....

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

                                  Wenn ich das richtig verstehe, wird die bridge auf dem Host (meiner DS) erstellt obwohl ich das Netzwerk im Portainer errichtet habe.

                                  Portainer ist nur eine Webobefläche zur Administration von Docker, was als Dienst auf der DS läuft den du über das Docker-paket im DSM installiert hast... Du kannst nichts im Portainer einrichten. Die kannst nur mit Hilfe von Portainer etwas unter Docker einrichten....

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

                                  Und weil die Bridge auf dem Host erstellt wird führt das auf der Bridge eingetragene Gateway immer zu dem Container welcher an die Bridge angeschlossen ist.

                                  Das Bridge-Netzwerk ist ein virtuelles Netz, dass nur innerhalb von Docker auf deiner DS existiert. Dabei führt das Gateway immer auf die DS.

                                  BTW:

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

                                  Nichts vernünftiges im Web zu finden? Dann muss ich das heute Abend wohl mal ändern! #knowledgebase

                                  Brauch ich nichtmal was tun. Habe ich im Mai schon gemacht: https://buanet.de/knowledge-base/eigenes-bridged-netzwerk-anlegen/

                                  MfG,
                                  André

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

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

                                    Brauch ich nichtmal was tun. Habe ich im Mai schon gemacht: https://buanet.de/knowledge-base/eigenes-bridged-netzwerk-anlegen/

                                    Du hast Recht, ich habe erst gestern damit begonnen un muss noch viel lernen. 😉
                                    Aus Deinem Tutorial kann ich jedoch nicht entnehmen, dass die Gateway IP der Bridge auch gleichzeitig die Verbindung zum DS-Host ist um bsp-weise eine externe SQL-Datenbank anzubinden.

                                    Und hier hab ich nur ausgeführt was

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

                                    @Fichtendickicht Das Bridge Network wird auf dem Host erstellt. Daher ist der Host auch immer das Gateway.

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

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

                                      @andre
                                      Ich kann auf Deiner Seite hier nichts posten, die Seite hört nicht auf zu laden.

                                      Wenn ich nämlich den iobroker mit den von Dir vorgeschlagenen Volumes installieren will,
                                      a55ac75d-d29b-4845-a629-07167a6b6029-grafik.png
                                      bekomme ich folgende Fehlermeldung:

                                       ,
                                      ------------------------------------------------------------,
                                      ---------------     2019-12-19 18:07:03      ---------------,
                                      ------------------------------------------------------------,
                                       ,
                                      ------------------------------------------------------------,
                                      -----       Welcome to your ioBroker-container!        -----,
                                      -----          Startupscript is now running.           -----,
                                      -----                Please be patient!                -----,
                                      ------------------------------------------------------------,
                                       ,
                                      ------------------------------------------------------------,
                                      -----              Debugging information               -----,
                                      -----                                                  -----,
                                      -----                      System                      -----,
                                      -----               arch:      x86_64                  -----,
                                      -----                                                  -----,
                                      -----                     Versions                     -----,
                                      -----               image:     v4.0.0                  -----,
                                      -----               node:      v10.17.0                -----,
                                      -----               npm:       6.11.3                  -----,
                                      -----                                                  -----,
                                      -----                       ENV                        -----,
                                      -----               AVAHI:     false                   -----,
                                      -----               PACKAGES:  nano                    -----,
                                      -----               SETGID:    1000                    -----,
                                      -----               SETUID:    1000                    -----,
                                      ------------------------------------------------------------,
                                       ,
                                      ------------------------------------------------------------,
                                      -----   Step 1 of 5: Installing additional packages    -----,
                                      ------------------------------------------------------------,
                                       ,
                                      The following packages will be installed: nano...,
                                      Done.,
                                       ,
                                      ------------------------------------------------------------,
                                      -----   Step 2 of 5: Detecting ioBroker installation   -----,
                                      ------------------------------------------------------------,
                                       ,
                                      There is data detected in /opt/iobroker, but it looks like it is no instance of iobroker!,
                                      Please check/ recreate mounted folder/ volume and restart ioBroker container.,
                                      

                                      Und es ist unerheblich ob ich mittels 9afff260-b4ea-4f2c-8ee5-0b5ff9ab8e8f-grafik.png den Container kopiere oder aus dem Image neu erstelle.

                                      Die Fehlermeldung die ich ins Logging eingebaut habe sagt doch eigentlich alles:

                                      There is data detected in /opt/iobroker, but it looks like it is no instance of iobroker!,
                                      Please check/ recreate mounted folder/ volume and restart ioBroker container.,
                                      

                                      Wenn du einen Ordner einbindest prüft das Script ob sich dort eine ioBroker-Installation befindet. Wenn ja, passiert nichts, wenn der Ordner Leer ist, wird er vom Script gefüllt, sind Daten im Ordner, die aber nicht als ioBroker-Installation identifiziert werden können bricht das Script ab... Was bei dir der Fall ist. Scheint als sei dein Ordner nicht leer. Wenn du mir einem leeren Ordner starten willst, lösche den Ordner auf deiner DS nochmal und lege ihn neu an...

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

                                      Aus Deinem Tutorial kann ich jedoch nicht entnehmen, dass die Gateway IP der Bridge auch gleichzeitig die Verbindung zum DS-Host ist um bsp-weise eine externe SQL-Datenbank anzubinden.

                                      Dem kann ich nur zustimmen. Das Thema mit dem zweiten Bridge-Netzwerk wird aber auch gar nicht im Tutorial behandelt 😀

                                      MfG,
                                      André

                                      1 Reply Last reply Reply Quote 1
                                      • D
                                        dos1973 @andre last edited by dos1973

                                        @andre

                                        Danke hat jetzt, nachdem ich ein eigenes Bridge Netzwerk angelegt habe hat es geklappt. Daten kommen im Iobroker an.

                                        Ich meine es hätte woh auch über das Standard Bridge funktioniert - hätte ich in meinem Script auch die "BridgeIP" genommen... anstelle der Macvlan Adresse. 😞 Denkfehler...

                                        war aber schwere Geburt! 😉
                                        auch allen anderen Beteiligten Vielen Dank für die konstruktiven Vorschläge

                                        D 1 Reply Last reply Reply Quote 0
                                        • E
                                          eve11 last edited by

                                          Hallo zusammen,

                                          iobroker läuft eigentlich ohne Probleme im Docker auf meiner DS218+ im Host - Modus.
                                          Leider nur die Console funktioniert nicht mehr seit einiger Zeit, keine Ahnung warum.
                                          Ich habe mir nun Zeit genommen auch die Installation über Portainer einmal auszuprobieren.
                                          Ich habe soweit alles nach Anleitung hinbekommen. Auch hier habe ich den Container im Host-Modus angelegt, und zuvor meine alte Installation in den neu eingerichteten Ordner kopiert.
                                          Beim ersten Start bekomme ich immer die gleichen fünf Zeilen (node:377) im Log und iobroker startet auch nicht.

                                          host.Server check instance "system.adapter.fullybrowser.0" for host "Server"
                                          host.Server check instance "system.adapter.fb-checkpresence.0" for host "Server"
                                          (node:377) UnhandledPromiseRejectionWarning: ParserError: Protocol error, got "H" as reply type byte. Please report this.
                                              at handleError (/opt/iobroker/node_modules/redis-parser/lib/parser.js:190:15)
                                              at parseType (/opt/iobroker/node_modules/redis-parser/lib/parser.js:304:14)
                                          (node:377) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1)
                                          (node:377) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
                                          
                                          

                                          Kann mir hier jemand weiterhelfen.

                                          Vielen Dank

                                          Heiko

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

                                            Eine kleine Frage bzgl. Portainer.
                                            Wenn ich in meinem ioBroker-Docker-Container mal die ENV anpassen möchte, dann kann ich ja oben auf "Duplicate/Edit" klicken und dann dort unter Advanced container settings - ENV die Einstellungen vornehmen.
                                            Aber jetzt möchte ich ja nur dieses ändern und nicht gleich einen neuen Container generieren oder ähnliches.
                                            Also müsste ich doch "Always pull the image" ausschalten ...
                                            Aber was passiert dann, wenn ich "Deploy the container" klicke?
                                            Holt er sich dann das Image, was er damals schon runtergezogen hat und erzeugt quasi daraus den neuen Container mit den alten bzw neuen Einstellungen von Env?
                                            Bin mir da noch etwas unsicher und wollte über Weihnachten jetzt nicht nur am ioBroker sitzen 😉

                                            btw Frohe Weihnachten euch allen!

                                            a200 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

                                            1.0k
                                            Online

                                            31.7k
                                            Users

                                            79.7k
                                            Topics

                                            1.3m
                                            Posts

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