Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Off Topic
    4. Docker
    5. [gelöst] Pi4 - bookworm, docker, portainer, iobroker, influx

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    [gelöst] Pi4 - bookworm, docker, portainer, iobroker, influx

    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      Sleepwalker @Marc Berg last edited by

      @marc-berg Hm, schade, das MACVLAN ist für meinen Geschmack leider nicht so das Gelbe vom Ei.

      Dann werde ich jetzt erst einmal versuchen, die Backups wieder einzuspielen. Entweder die Binds komplett oder nur Backitup, das entscheidet gleich mein Bauch. Leider hat sich die docker GID bei Bookworm von 994 auf 992 geändert und ich habe mittels tar ohne --numeric-owner gesichert 🤦‍♂️ 994 ist nun leider i2c, den ich eigentlich nicht brauche....

      Marc Berg 1 Reply Last reply Reply Quote 0
      • Marc Berg
        Marc Berg Most Active @Sleepwalker last edited by

        @sleepwalker sagte in Pi4 - bookworm, docker, portainer, iobroker, influx:

        MACVLAN ist für meinen Geschmack leider nicht so das Gelbe vom Ei.

        Warum? Leidest du an IP-Address-Knappheit in deinem Netzwerk?

        S 1 Reply Last reply Reply Quote 0
        • S
          Sleepwalker @Marc Berg last edited by

          @marc-berg Weil sich die Container dann gegenseitig nicht mehr sehen. Oder?

          1 Reply Last reply Reply Quote 0
          • Marc Berg
            Marc Berg Most Active last edited by Marc Berg

            @sleepwalker sagte in Pi4 - bookworm, docker, portainer, iobroker, influx:

            Weil sich die Container dann gegenseitig nicht mehr sehen. Oder?

            Erstmal ja, korrekt. Darum könntest du einen der Container, die miteinander reden sollen, AUCH in das zweite Netzwerk stecken. Fertig.

            In dem Beispiel also den ioBroker in das MACVLAN und in das Bridge-Netzwerk, in welchem auch die InfluxDB steckt.

            S 1 Reply Last reply Reply Quote 1
            • S
              Sleepwalker @Marc Berg last edited by

              @marc-berg Oh warte, da eröffnen sich neue Welten. Container in mehreren Netzwerken. Jetzt ergibt das alles einen Sinn. Gibt es bei solchen Konstellationen etwas bestimmtes zu beachten oder regelt docker den Zugriff, wann es wohin geht?

              Marc Berg 1 Reply Last reply Reply Quote 0
              • Marc Berg
                Marc Berg Most Active @Sleepwalker last edited by

                @sleepwalker sagte in Pi4 - bookworm, docker, portainer, iobroker, influx:

                Gibt es bei solchen Konstellationen etwas bestimmtes zu beachten oder regelt docker den Zugriff, wann es wohin geht?

                Es ist (weiterhin) zu beachten, dass man keine IP-Adressen zum Ansprechen des jeweils anderen Containers nutzt, sondern den Namen. Dann wird automatisch der richtige Container (also hier z.B. "influx") angesprochen.

                S 1 Reply Last reply Reply Quote 1
                • S
                  Sleepwalker @Marc Berg last edited by

                  @marc-berg Holla, das gefällt mir! Ich glaube, das wird in Angriff genommen, bevor ich mit dem Wiederherstellen weitermache.

                  Uh, ich bin aufgeregt, werde hier auf jeden Fall Ergebnisse posten, ggf. noch die ein oder andere Frage.

                  Herzlichen Dank bis hierhin erst einmal! Das war super aufschlussreich (wie schon beim letzten Mal 🙂 )

                  Marc Berg 1 Reply Last reply Reply Quote 0
                  • Marc Berg
                    Marc Berg Most Active @Sleepwalker last edited by Marc Berg

                    @sleepwalker sagte in [gelöst] Pi4 - bookworm, docker, portainer, iobroker, influx:

                    Ich glaube, das wird in Angriff genommen

                    Vielleicht noch ein Tipp. Ich bin ein Fan davon, auch die Netzwerke komplett im Stack mit anzulegen. Dann hat man die gesamte Konfig in einer Datei und muss nicht noch manuell in Portainer rumwurschteln.

                    Beispiel mit Container in zwei Netzwerken:

                    services:
                    ##### SERVIIO #####
                      serviio:
                        container_name: serviio
                        image: soerentsch/serviio
                        hostname: serviio
                        domainname: fritz.box
                        restart: unless-stopped
                        volumes:
                          - /opt/docker/serviio/library:/opt/serviio/library
                          - /opt/docker/serviio/config:/opt/serviio/config
                          - /opt/docker/serviio/plugins:/opt/serviio/plugins
                          - /opt/docker/serviio/log:/opt/serviio/log
                          - /media/serviio:/media/serviio
                        environment:
                          - TZ=Europe/Berlin
                        networks:
                          mvl1:
                            ipv4_address: 192.168.1.32
                          serviio_net:
                    ##### NETWORKS #####
                    networks:
                      mvl1:
                        driver: macvlan
                        name: mvl1
                        driver_opts:
                          parent: eno1
                        ipam:
                          config:
                            - subnet: 192.168.1.0/24
                              gateway: 192.168.1.1
                              ip_range: 192.168.1.32/27
                      serviio_net:
                        driver: bridge
                        name: serviio_net
                    
                    S 1 Reply Last reply Reply Quote 1
                    • S
                      Sleepwalker @Marc Berg last edited by Sleepwalker

                      @marc-berg

                      Leider hatte das Backup doch Vorrang, nachdem ich mein DHCP erstmal aufräumen musste.

                      Ich habe jetzt

                      192.168.100.64/29
                      
                      Netzadresse: 192.168.100.64
                      Broadcast: 192.168.100.71
                      Host-IPs: 192.168.100.65 bis 192.168.100.70
                      

                      aus meinem IP-Pool genommen. Soweit, so gut.

                      Nun möchte ich die Netzwerke ebenfalls in der "compose file" mit anlegen. Das sollte für ioBroker mit influx ungefähr so aussehen (noch nicht getestet):

                      services:
                        iobroker:
                          image: iobroker/iobroker:latest
                          container_name: iobroker
                          hostname: iobroker
                          networks:
                            - vlan_network
                                ipv4_address: 192.168.100.65
                            - iobroker_network
                          restart: always
                      #    ports:
                      #      - 8081:8081 # Admin
                      #      - 8082:8082 # VIS
                      #      - 1880:1880 # NodeRed
                      #      - 1882:1882 # Shelly Adapter MQTT
                      #      - 8091:8091 # Backitup Restore Webinterface
                      #      - 9081:9081 # Backitup Fileserver fur Downloads von Backitup
                      #      - 9082:9082 # Backitup Fileserver fur Uploads von Backitup
                      #      - 34103:34103 # Alexa Adapter Cookie
                          volumes:
                            - type: bind
                              source: /home/pi/docker_binds/iobroker_data/opt/iobroker
                              target: /opt/iobroker
                          environment:
                            - IOB_BACKITUP_EXTDB=true
                            - PACKAGES=influxdb2-cli
                        influx:
                          image: influxdb:latest
                          container_name: influx
                          hostname: influx
                          networks:
                            - iobroker_network
                          restart: always
                          ports:
                            - 8086:8086 # Admin
                          volumes:
                            - type: bind
                              source: /home/pi/docker_binds/influx_data/var/lib/influxdb2
                              target: /var/lib/influxdb2
                      networks:
                        vlan_network:
                          driver: macvlan
                          name: vlan_network
                          driver_opts:
                            parent: eth0
                          ipam:
                            config:
                              - subnet: 192.168.100.0/24
                                gateway: 192.168.100.1
                                ip_range: 192.168.64/29
                        iobroker_network:
                          driver: bridge
                          name: iobroker_network
                      

                      Jetzt habe ich noch drei Fragen:

                      1. Sieht das so i.O. aus?
                      2. Die Portweiterleitungen beim ioBroker brauche ich nicht, wenn ich über die .65 gehe, oder?
                      3. Die schwierigste Frage: Ich würde das gleiche MACVLAN gerne in einem anderen Stack nutzen, dann aber für einen Container mit der IP .66. Geht das? Ist das so, dass der erste Stack, der ein Netzwerk nutzt, es erstellt und alle anderen Stacks mit dem gleichen Netzwerknamen das Netz dann mitnutzen, sollte es schon existieren?

                      Sorry, etwas umständlich, aber bevor ich das kaputtfrickel...im Netz habe ich da so direkt nichts zu gefunden.

                      1 Reply Last reply Reply Quote 0
                      • Marc Berg
                        Marc Berg Most Active last edited by

                        @sleepwalker sagte in [gelöst] Pi4 - bookworm, docker, portainer, iobroker, influx:

                        Sieht das so i.O. aus?

                        • die Einrückungen passen nicht überall. Es müssen für eine untergeordnete Ebene immer zwei Zeichen eingerückt werden.
                        • ip_range ist falsch, da fehlt ein Oktett

                        Die Portweiterleitungen beim ioBroker brauche ich nicht, wenn ich über die .65 gehe, oder?

                        Korrekt, bei Host oder MACVLAN sind Weiterleitungen sinnfrei. Die kann man zwar ohne Fehlermeldungen im Stack definieren, haben aber keine Funktion.

                        Die schwierigste Frage: Ich würde das gleiche MACVLAN gerne in einem anderen Stack nutzen, dann aber für einen Container mit der IP .66. Geht das? Ist das so, dass der erste Stack, der ein Netzwerk nutzt, es erstellt und alle anderen Stacks mit dem gleichen Netzwerknamen das Netz dann mitnutzen, sollte es schon existieren?

                        Das geht, hat aber ein paar kleine Randerscheinungen:

                        Du kannst im zweiten Stack das erste Netzwerk mit dem Schlüsselwort "external: true" mitnutzen. Das hat aber den Nachteil, dass der zweite Stack nur startbar ist, wenn der erste schon läuft.

                        networks:
                          vlan_network:
                            external: true
                        

                        Oder du definierst im zweiten Stack das Netzwerk wie im ersten 1:1 nochmal. Dann ist die Startreihenfolge egal. Kleiner Nachteil: Wenn beide Stacks beendet sind, wird in diesem Fall das Netzwerk nicht mitgelöscht.

                        Kommt auf den konkreten Anwendungfall an, ob das sinnvoll ist.

                        S 1 Reply Last reply Reply Quote 1
                        • S
                          Sleepwalker @Marc Berg last edited by

                          @marc-berg
                          Herzlichen Dank, wie immer 🙂

                          Zu 1: Ja, natürlich, die 100 fehlt, Flüchtigkeitsfehler. Die Einrückungen zerschießt mir Notepad++ immer, danke für den Hinweis.

                          Zu 3: Lösung 1 wäre unschön, eine Startreihenfolge oder auch eine Voraussetzung für den 2. Stack geht nicht. Lösung 2 klingt jetzt nicht wild. Das Netzwerk wird ja dann beim nächsten Start wiederverwendet, nehme ich an. Oder würde das Netz als Leiche herumliegen, auch wenn ein Stack wieder gestartet wird?

                          Alternativ würde ich das MACVLAN halbieren oder gar vierteln. Dann gehen zwar viele Broadcasts und Netzadressen dabei drauf, aber mehr als 2 bis 3 würde ich auf dem Raspi4 eh nicht machen wollen. Mir fällt außer den beiden geplanten auch kein 3. Anwendungsfall mehr ein.

                          Gibt's da eine Art Best Practice?

                          Marc Berg 1 Reply Last reply Reply Quote 0
                          • Marc Berg
                            Marc Berg Most Active @Sleepwalker last edited by

                            @sleepwalker sagte in [gelöst] Pi4 - bookworm, docker, portainer, iobroker, influx:

                            Oder würde das Netz als Leiche herumliegen, auch wenn ein Stack wieder gestartet wird?

                            Nein, das wird dann wieder aktiv genutzt.

                            Alternativ würde ich das MACVLAN halbieren oder gar vierteln. Dann gehen zwar viele Broadcasts und Netzadressen dabei drauf, aber mehr als 2 bis 3 würde ich auf dem Raspi4 eh nicht machen wollen. Mir fällt außer den beiden geplanten auch kein 3. Anwendungsfall mehr ein.
                            Gibt's da eine Art Best Practice?

                            Keine Ahnung. Mir fällt auf Anhieb auch kein Anwendungsfall ein, in welchem man mehrere Stacks mit MACVLAN haben sollte. Aus meiner Sicht könnte man alle Container, die einen stabilen Zustand erreicht haben und an denen man nicht mehr ständig rumfummelt, in einen Stack werfen.

                            Meine persönliche best practice besteht darin, dass ich einen Stack mit zwei Bridge-Netzwerken habe, in welchem alle produktiven Container (ca. 20) stecken, und einen weiteren Stack mit einem MACVLAN mit zwei Containern. Dies aber auch nur noch aus historischen Gründen.
                            Dann gibt es einen dritten Stack mit meiner gesamten ioBroker-Testumgebung (InfluxDB 1+2, Grafana, Redis, MQTT Broker) in einem separaten Bridge-Netzwerk.

                            S 1 Reply Last reply Reply Quote 1
                            • S
                              Sleepwalker @Marc Berg last edited by

                              @marc-berg
                              Vielen Dank für deine Erläuterungen.

                              Alle stabilen Container in einen Stack zu werfen, passt für mich nicht so 100%ig. Z.B. habe ich Adguard in einem separaten Stack, weil er technisch getrennt sein soll, falls ich z.B. ioBroker mal restarten möchte.

                              Einen zweiten Stack mit MACVLAN hätte ich auch gerne für eine Testumgebung (die noch nicht existiert), ich glaube das packt der Pi4 noch, wenn die nicht ständig läuft. Leider werden mir einige Daten nur per Broadcast bereitgestellt, das ist echt nervig.

                              Werde mir mal ein paar Gedanken dazu machen. Du hast mir sehr geholfen, vielen Dank nochmal! Ich frage mich, wie man soviel wissen kann 😄

                              Marc Berg 1 Reply Last reply Reply Quote 0
                              • S
                                Sleepwalker last edited by

                                @marc-berg
                                Vielen Dank für deine Erläuterungen.

                                Alle stabilen Container in einen Stack zu werfen, passt für mich nicht so 100%ig. Z.B. habe ich Adguard in einem separaten Stack, weil er technisch getrennt sein soll, falls ich z.B. ioBroker mal restarten möchte.

                                Einen zweiten Stack mit MACVLAN hätte ich auch gerne für eine Testumgebung (die noch nicht existiert), ich glaube das packt der Pi4 noch, wenn die nicht ständig läuft. Leider werden mir einige Daten nur per Broadcast bereitgestellt, das ist echt nervig.

                                Werde mir mal ein paar Gedanken dazu machen. Du hast mir sehr geholfen, vielen Dank nochmal! Ich frage mich, wie man soviel wissen kann 😄

                                1 Reply Last reply Reply Quote 0
                                • Marc Berg
                                  Marc Berg Most Active @Sleepwalker last edited by Marc Berg

                                  @sleepwalker sagte in [gelöst] Pi4 - bookworm, docker, portainer, iobroker, influx:

                                  Alle stabilen Container in einen Stack zu werfen, passt für mich nicht so 100%ig. Z.B. habe ich Adguard in einem separaten Stack, weil er technisch getrennt sein soll, falls ich z.B. ioBroker mal restarten möchte.

                                  Pi-hole war für mich auch der Grund, einen separaten MACVLAN Stack zu nutzen. Seitdem ich einen zweiten Pihole Container auf separater Hardware habe, würde ich das eigentlich nicht mehr brauchen.

                                  Unabhängig davon kannst du den ioBroker Container doch auch unabhängig von Stack einfach neu starten.

                                  S 1 Reply Last reply Reply Quote 1
                                  • S
                                    Sleepwalker @Marc Berg last edited by

                                    @marc-berg said in [gelöst] Pi4 - bookworm, docker, portainer, iobroker, influx:

                                    Unabhängig davon kannst du den ioBroker Container doch auch unabhängig von Stack einfach neu starten.

                                    Da ist was dran. Dennoch sträubt sich etwas unerklärliches in mir, Adguard mit in den gleichen Stack aufzunehmen.

                                    Separate Hardware ist bei mir auch gerade so ein Thema, das im Kopf herumspukt. Aber das ist noch lange nicht ausgereift, denn NUCs im Schaltschrank auf Hutschiene sind mir vom Leistungshunger und dem geschlossenen Schrank noch nicht ganz geheuer. Und ein zweiter Pi(5) ist mir im Vergleich einfach zu teuer.

                                    Marc Berg 1 Reply Last reply Reply Quote 0
                                    • Marc Berg
                                      Marc Berg Most Active @Sleepwalker last edited by

                                      @sleepwalker sagte in [gelöst] Pi4 - bookworm, docker, portainer, iobroker, influx:

                                      Da ist was dran. Dennoch sträubt sich etwas unerklärliches in mir, Adguard mit in den gleichen Stack aufzunehmen.

                                      Ich denke, es gibt gute Argumente für beide Herangehensweisen. Letztlich muss man den Weg finden, mit dem man sich am wohlsten fühlt.

                                      S 1 Reply Last reply Reply Quote 1
                                      • S
                                        Sleepwalker @Marc Berg last edited by Sleepwalker

                                        @marc-berg
                                        Moin, noch ein kleines Update meinerseits:

                                        Adguard und ioBroker sind nun schließlich doch in einem einzigen MACVLAN gelandet. Mit unterschiedlichen Stacks, die das gleiche MACVLAN 1:1 konfiguriert haben, natürlich mit unterschiedlichen ipv4-Adressen der Container 😉

                                        Grund: Mehrere MACVLANs an einem Host-Adapter funktionieren nicht. Und ich wollte nicht tiefer im System herumschrauben.

                                        Ich denke, ein herumgeisterndes Netzwerk wie in der jetzigen Lösung ist nicht so wild. Vielen Dank für die hilfreichen Tipps!

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

                                        Support us

                                        ioBroker
                                        Community Adapters
                                        Donate

                                        756
                                        Online

                                        31.7k
                                        Users

                                        79.7k
                                        Topics

                                        1.3m
                                        Posts

                                        3
                                        28
                                        1072
                                        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