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.
    • D
      darkiop Most Active @andre last edited by

      @andre Hi Andre, d.h. du hast jetzt eine docker-compose mit macvlan für den ioBroker? Würdest du diese mal zeigen?

      H andre 2 Replies Last reply Reply Quote 0
      • H
        Holzlenkrad @darkiop last edited by

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

        @andre Hi Andre, d.h. du hast jetzt eine docker-compose mit macvlan für den ioBroker? Würdest du diese mal zeigen?

        Bin zwar nicht Andre, kann dir aber mal mein File zeigen:

        version: '2.4'
        
        services:
          iobroker:
            image: buanet/iobroker:beta
            hostname: iobroker-docker
            networks:
              bridge:
              macvlan:
                ipv4_address: 192.168.178.162
            #ports:
            #  - "8081:8081"
            #  - "8082:8082"
            volumes:
              - "./iobroker:/opt/iobroker"
            devices:
              - "/dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00xxx-if00:/dev/serial/by-id/usb-Texas_Instruments_TI_CC2531_USB_CDC___0X00xxx-if00"
            restart: always
            depends_on:
              - fhem
        
          fhem:
            image: fhem/fhem:latest
            networks:
              - bridge
            ports:
              - "8083:8083"
            volumes:
              - "./fhem:/opt/fhem"
            devices:
              - "/dev/serial/by-id/usb-03eb_AT91USBSerial1-if00:/dev/serial/by-id/usb-03eb_AT91USBSerial1-if00"
            #environment:
            #  FHEM_UID: 6061
            #  FHEM_GID: 6061
            #  TIMEOUT: 10
            #  RESTART: 1
            #  TELNETPORT: 7072
            #  TZ: Europe/Berlin
            restart: always
        
        
        networks:
          bridge:
            driver: bridge  
          macvlan:
            external:
              name: macvlan0
        

        Ergänzungen?

        Das macvlan muss man in dem Fall per "docker networt create -d macvlan -..." erst noch erstellt werden. Soweit ich weiß kann man das aber komplett im compose File erledigen.

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

          @darkiop

          Ich habe hier mal ein Beispiel. Nur mit ioBroker-Container und den Netzwerken (MACVLAN + internes Bridge Netzwerk). Werde dazu auch noch ein Tutorial schreiben. Dann aber gleich zusammen mit einem Redis-Container. Dazu muss die aktuelle Beta aber erst zum "latest" werden (wegen der Möglichkeit gleich beim Setup Redis zu konfigurieren).

          version: "2"
          services:
            iobroker:
              container_name: iobroker
              image: buanet/iobroker:latest
              hostname: iobroker
              restart: always
              networks:
                macvlan:
                  ipv4_address: 192.168.0.73
                bridge:
                  ipv4_address: 172.18.0.2
              environment:
                - PACKAGES=nano
              volumes:
                - /volume1/docker/iobroker_data:/opt/iobroker
          
          networks:
            macvlan:
              driver: macvlan
              driver_opts:
                parent: eth0
              ipam:
                config:
                  - subnet: 192.168.0.0/24
                    gateway: 192.168.0.1
                    ip_range: 192.168.0.72/29
                    aux_addresses:
                      net-address: 192.168.0.72     # Reservierte Adresse, damit Docker nicht die Netzadresse vergibt. 
                    
            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é

          H 1 Reply Last reply Reply Quote 0
          • D
            darkiop Most Active last edited by

            @andr @Holzlenkrad Danke euch, das deckt sich fast mit meinen Versuchen.

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

              Hallo,
              André hat mich hierher verwiesen...ich hoffe, die Frage ist hier richtig, da zwar nicht Synologie, aber das Docker-Image von buanet auf dem Pi verwendet wird...

              Hakelig für Neulinge ist ja die Netzwerkkonfiguration des Containers. Ich habe folgendes Heimnetzwerk (FritzBox = 192.168.1.1):

              1.png

              Ich wollte (um möglichst nah an Andrés Anleitung zu bleiben) mit MACVLAN arbeiten. Wenn ich das richtig verstanden habe, dann sollte die ioBroker-Installation unter 192.168.1.250 ansprechbar sein für all die anderen Smart-Home-Geräte.

              Die Konfiguration habe ich folglich (hoffentlich richtig) so erstellt:

              2.png

              Gegen Ende der Container-Erstellung habe ich von meiner Fritzbox dann auch die Mail bekommen mit der Heimnetzänderung:

              3.png

              Folgendes Problem nun: Ich kann .250 und .16 von meinem Windows-PC aus nicht anpingen (Zeitüberschreitung der Anforderung.) .16 verstehe ich auch nicht, da mein Raspi von der Fritzbox fix die 25 per DHCP zugewiesen bekommt (und darunter auch erreichbar ist). Nach einem Reboot des Raspis habe ich noch ne Mail bekommen, nun soll der Raspi auf .17 laufen, tut er aber nicht (fix auf 25 und ist dort erreichbar).

              Hat jemand ne Idee, was ich da falsch mache? Habe ich das Konzept nicht verstanden? Die virtuelle IP von ioBroker (250) sollte doch im gleichen Netz wie alle anderen Geräte sein? Oder hätte ich da z.B. 192.168.2.x für alle Netzwerk-Angaben oben verwenden sollen? Aber dann würde ioBroker mit 192.168.2.250 ja nicht mit den Geräten in 192.168.1.x kommunizieren können, oder?

              Viele Grüße, Steffen

              FoodFighter 1 Reply Last reply Reply Quote 0
              • FoodFighter
                FoodFighter @stevie77 last edited by

                @stevie77
                Hast du gelesen, was "Holzlenkrad" diesbezüglich 14 Beiträge über deinem geschrieben hat?
                Beitrag 1683

                S 1 Reply Last reply Reply Quote 0
                • T
                  ts020339 last edited by

                  @stevie77 : was ist denn bei Deinem Raspi in den NEtzwerkeinstellungen eingestellt? Eine fixe IP-Adresse (z.B. die 192.168.1.16? ) oder dass er sich die IP von einem DHCP Server abholt?

                  Außerdem: Hängt Dein Raspi über WLAN oder LAN im Hausnetz?

                  Ich würde in Deinen Containereinstellungen auch für den iobroker Container mal eine fixe MAc-ADresse einstellen (z.B. die jetzt angezeigt). Bei mir war das z.B. sonst öfeters so, dass er bei ERstellung eines neuen Containers (z.B. wegen update) immer mal gern eine neue MAc-Adresse generiert hat und damit die Fritzbox-Einstellungen scheiterten.

                  Gruß,
                  Tim

                  S 1 Reply Last reply Reply Quote 0
                  • S
                    stevie77 @FoodFighter last edited by

                    @FoodFighter Nee, ich bin irgendwie noch etwas überfordert mit der Erstellung und Darstellung der Beiträge in diesem Forum. 😉 Werde mir das aber gleich mal ansehen und versuchen zu verstehen... 🙂

                    H 1 Reply Last reply Reply Quote 0
                    • H
                      Holzlenkrad @stevie77 last edited by Holzlenkrad

                      @stevie77
                      Ansonsten einfach "sudo rpi-update" eingeben, Raspi neustarten und den Docker Container noch mal genau so erstellen (alten sicherheitshalber löschen; das macvlan-Netzwerk musst du nicht neu erstellen), wie du es bisher gemacht hast. Das war nämlich im Endeffekt sogar richtig.

                      S 2 Replies Last reply Reply Quote 0
                      • S
                        stevie77 @ts020339 last edited by

                        @ts020339 Der Raspi holt sich die IP per DHCP von der Fritzbox und bekommt dann immer die 25 zugewiesen. Er hängt per Kabel im Hausnetz. Die Fritzbox hat ja auch scheinbar erkannt, dass da jetzt ein neuer "PC" (vergebener Name PC-192-168-1-250) auf 250 liegt (zeigte ihn erst im Abschnitt Aktive Verbindungen an, danach irgendwann im Abschnitt Ungenutzte Verbindungen - wobei da viele Geräte angezeigt werden, die funktionieren).

                        1 Reply Last reply Reply Quote 0
                        • S
                          stevie77 @Holzlenkrad last edited by

                          @Holzlenkrad Nur zum Verständnis als Neueinsteiger: Ist die ganze Technik rund um Docker so unzuverlässig, dass man mehrere gleiche Versuche braucht bis es zufällig mal klappt? Oder was ist der Hintergrund dieses Ratschlags (fast alles wegwerfen und dann nochmals gleich machen)?
                          Mein Vorgehen und Verständnis des Ganzen ist also aber prinzipiell richtig wenn du schreibst, dass "es im Endeffekt sogar richtig" war? Es braucht eine IP (250 bei mir) im gleichen Subnetz (192.168.1.x bei mir) auf der die Heimnetzgeräte dann ioBroker ansprechen können und von ioBroker angesprochen werden, ja? Und als Gateway gibt man die Fritzbox an?

                          H 1 Reply Last reply Reply Quote 0
                          • H
                            Holzlenkrad @stevie77 last edited by

                            @stevie77
                            Nein, Docker funktioniert so wie es soll.

                            Aber der Linux Kernel hat seit Januar einen Bug und mit sudo rpi-update installierst du einfach einen neuen Kernel, ohne Fehler.

                            Der Vorschlag den Container zu löschen war nur, damit es danach auch sicher klappt. Aber wenn ich noch mal so darüber nachdenke, sollte es auch ohne den Docker Container zu löschen direkt funktionieren.

                            Wie gesagt, hast du den Kernel von Raspberry Pi schon aktualisiert? Es bringt dir nichts, wenn du jetzt deine Konfiguration hinterfragst, wenn das Problem an einer völlig anderen Stelle liegt...

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

                              Ich verstehe den ganzen Hype um das MACVLAN noch nicht so ganz recht.
                              Mag zwar schön und gut sein, dass der Container eine eigene IP bekommt. Jedoch bringt es den Nachteil mit sich, dass z.B. der InfluxDB- oder Mosquitto-Container auf dem gleichen Gerät (Rasppi) nicht mehr erreichbar ist für iobroker, weil beide über die gleiche Netzwerkkarte mit zwei IPs funken.
                              Grundlegend funktioniert das MACVLAN jetzt, dank dem Kernel-Update...
                              Ich persönlich sehe aber mehr Sinn in einem Bridge-Netzwerk mit entsprechenden Port-Freigaben.
                              Oder verdenke ich mich hier irgendwo?

                              S H 2 Replies Last reply Reply Quote 0
                              • S
                                stevie77 @FoodFighter last edited by

                                @FoodFighter Mich hat halt dazu in der Anleitung der Satz "Eine entsprechende (noch unvollständige) Liste der Ports habe ich in der Knowledgebase abgelegt." abgeschreckt. Das könnte für mich als Anfänger zu dem Szenario führen, dass ioBroker nicht ordentlich funktioniert, weil irgendwelche Ports vergessen wurden zu öffnen und ich werde u.U. nie rausbekommen, welche das sein könnten...

                                1 Reply Last reply Reply Quote 0
                                • H
                                  Holzlenkrad @FoodFighter last edited by

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

                                  Jedoch bringt es den Nachteil mit sich, dass z.B. der InfluxDB- oder Mosquitto-Container auf dem gleichen Gerät (Rasppi) nicht mehr erreichbar ist für iobroker, weil beide über die gleiche Netzwerkkarte mit zwei IPs funken.

                                  Hat bei der der InfluxDB Container auch eine eigene IP-Adresse über macvlan? Oder nutzt du da einfach nur den Bridge Mode?

                                  Dass die Docker Container mit macvlan nicht mit dem Host (und entsprechend den Container im Bridge Mode) kommunizieren können, ist ein bekanntes Problem. Das löst man, indem man eine zusätzliche virtuelle Netzwerkkarte auf dem Raspberry Pi erstellt und die mit der physischen verknüpft.

                                  War mir aber zu kompliziert. Ich habe das jetzt so gelöst, dass bei mir iobroker sowohl das macvlan Interface hat, als auch das Bridge Interface zur Kommunikation mit den anderen Containern 😄

                                  FoodFighter 1 Reply Last reply Reply Quote 0
                                  • FoodFighter
                                    FoodFighter @Holzlenkrad last edited by FoodFighter

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

                                    Hat bei der der InfluxDB Container auch eine eigene IP-Adresse über macvlan? Oder nutzt du da einfach nur den Bridge Mode?

                                    InfluxDB, Mosquitto und Portainer laufen im Bridge-Mode. (iobroker im Moment auch noch/wieder)
                                    Pihole läuft im Host-Mode.

                                    Das löst man, indem man eine zusätzliche virtuelle Netzwerkkarte auf dem Raspberry Pi erstellt und die mit der physischen verknüpft.

                                    Das klingt mir persönlich auch nach viel zu viel Frickelei und nach unnötigen Fehlerquellen

                                    Ich habe das jetzt so gelöst, dass bei mir iobroker sowohl das macvlan Interface hat, als auch das Bridge Interface zur Kommunikation mit den anderen Containern

                                    DAS klingt nach der Lösung, die ich auch bevorzugen würde! Wie hast du dem Container denn zusätzlich zum macvlan noch das Bridge-Interface eingehängt?
                                    Über Portainer hat man pro Container nur die Möglichkeit ein Netzwerk auszuwählen...oder ich übersehe den Punkt immer und immer wieder.

                                    Auf die Weise wär das ganz cool. IOBroker hätte seine eigene IP, Sachen wie COAP (Shellies) würden funktionieren, weil iobroker nicht im virtuellen Docker-Netzwerk versteckt ist, die Kommunikation zwischen den Containern würde funktionieren....Das klingt für mich nach dem ultimativen Masterplan

                                    [edit]
                                    oh...ich lese oben gerade - du hast das über ein docker-compose-yml gemacht.
                                    Dann frage ich mal andersrum -> kann man das auch über Portainer machen? (rein aus Interesse)

                                    [edit-edit]
                                    Ja, geht.
                                    Container mit einem Netzwerk erstellen, danach den gestarteten Container anklicken (Übersicht) und dann unten auf "Join Network"

                                    Sau Geil...det freut mir - danke!

                                    H S 2 Replies Last reply Reply Quote 0
                                    • H
                                      Holzlenkrad @FoodFighter last edited by Holzlenkrad

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

                                      [edit]
                                      oh...ich lese oben gerade - du hast das über ein docker-compose-yml gemacht.
                                      Dann frage ich mal andersrum -> kann man das auch über Portainer machen? (rein aus Interesse)

                                      Hab gerade mal in Portainer rein geguckt, aber da auch keine Möglichkeit gefunden.

                                      Ja genau, per docker-compose. Hat noch weitere Vorteile. Z.B. müssen Ports für den Zugriff auf die Datenbank gar nicht mehr gepublisht werden, wenn ohnehin nur Dienste, die unter Docker laufen in die Influx DB schreiben dürften, weil dann alles Docker-intern abläuft.

                                      Das macht die ganze Sache natürlich noch mal komplexer. Aber wie gesagt, für mich funktioniert es so ganz gut und ich habe mit dem Setup bis jetzt zum Kernel Bug auch noch keine Probleme gehabt.

                                      Edit: Ach super, dass du da im Portainer eine Möglichkeit gefunden hast. Noch besser. Ich nutze den eigentlich nur zum Monitoren meiner Container, also logfiles oder mal Consolenzugriff 😄

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

                                        Man darf dann nur nicht vergessen, dass man dem InfluxDB und Mosquitto-Containern eine feste virtuelle IP zuweist (zB 172.17.0.4) und die Container über die iobroker-Adapter dann auch entsprechend über diese internen IPs ansprechen muss, nicht mehr über die IP vom RaspPi (bei mir zB 192.168.178.11) 🙂

                                        1 Reply Last reply Reply Quote 0
                                        • S
                                          stevie77 @Holzlenkrad last edited by Negalein

                                          @Holzlenkrad So, hab nun den Kernel von 4.19.97-v7l+ auf 4.19.114-v7l+ upgedatet (mit Reboot). Das hatte ich sogar schonmal ausgeführt, mich aber von den Warnungen abschrecken lassen und abgebrochen. Danach im ersten Versuch den Container neu erstellt, da kackte die Ausführung des Containers aber nach ner Weile im 2. Schritt des ioBroker-Starts ab. Also habe ich alles nochmals gelöscht und alles von vorne...
                                          Ergebnis nun: Im Logfile sind nun die letzten Einträge Starting ioBroker (was vermutlich richtig ist?)...

                                          host.iobroker check instance "system.adapter.admin.0" for host "iobroker"
                                          host.iobroker check instance "system.adapter.discovery.0" for host "iobroker"
                                          host.iobroker check instance "system.adapter.info.0" for host "iobroker"
                                          

                                          Ich kann aber die IP 192.168.1.250 immer noch nicht anpingen von meinem Windows-PC 192.168.1.26. So gesehen brachte das keine Veränderung, außer dass im Logfile der vorherige Fehler

                                          2020-04-13T00:59:02.436388708Z Cannot send diag info: ETIMEDOUT
                                          2020-04-13T00:59:10.427076733Z failed to download new sources, use cached sources
                                          2020-04-13T00:59:10.427240080Z Cannot download json from http://download.iobroker.net/sources-dist-hash.json. Error: Error: ETIMEDOUT
                                          

                                          nicht mehr auftritt.

                                          Doch was falsch mit meiner Netzwerkkonfiguration?


                                          Mod-Edit: Code/Log in Code Tags gepackt. Bitte benutzt die Code Tags Funktion -> </>
                                          Hier gehts zur Hilfe.

                                          1 Reply Last reply Reply Quote 0
                                          • S
                                            stevie77 @Holzlenkrad last edited by

                                            @Holzlenkrad Trotz Kernel-Update scheine ich immer noch genau an dem Problem zu hängen. Bin jetzt einen Schritt weiter: Wenn ich aus dem ioBroker-Container heraus meinen Windows-Rechner 192.168.1.26 anpinge, dann kann ich auch plötzlich vom Windows-Rechner .26 auf die ioBroker-Installation 192.168.1.250 zugreifen und die GUI von ioBroker im Browser aufrufen. Und mit meinem Notebook mit ip .24 verhält es sich exakt gleich. Das ist ja genau der Kernel-Bug, ne?

                                            Was kann man als Linux-Anfänger beim Kernel-Update falsch machen? Deinen genannten Befehl duo rpi-update habe ich ohne Fehlermeldungen bis zum Ende ausgeführt. uname -r zeigt den neuen Kernel 4.19.114-v7l+ an. Muss man den Kernel irgendwie noch committen/aktivieren o.ä.? Reboot habe ich gemacht, Raspi war auch mal stromlos...

                                            H 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

                                            481
                                            Online

                                            31.8k
                                            Users

                                            79.9k
                                            Topics

                                            1.3m
                                            Posts

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