R-Matic Container erhält neue IP-Adresse nach Docker Start

Einrichtung, Nutzung und Hilfe zu RaspberryMatic (OCCU auf Raspberry Pi)

Moderatoren: jmaus, Co-Administratoren

Antworten
Auweia
Beiträge: 90
Registriert: 04.08.2012, 16:57
Wohnort: Regensburg
Hat sich bedankt: 3 Mal
Danksagung erhalten: 2 Mal

R-Matic Container erhält neue IP-Adresse nach Docker Start

Beitrag von Auweia » 24.02.2021, 18:45

Hallo,
ich habe RaspberryMatic im Docker mit dem deploy.sh installiert, es läuft momentan noch in einer Test-Umgebung mit je einem HM-IP und HM Gerät.
Im Docker habe ich noch andere Container installiert: ssh, portainer, NodeRed und MQTT.
Fast nach jedem Neustarts des RPIs oder auch des Dockers erhält der ccu-Container eine neue IP-Adresse aus dem 172.17.0.x Bereich und alle anderen Container-Adressen werden durchgemischt. Offensichtlich wer als 1. geladen wird, erhält die kleinste IP Adresse.
Das ist natürlich höchst unangenehm, da z.B. im NodeRed alle Nodes angepasst werden müssen.
Wie löst ihr das ?
mit MacVlan?
Viele Grüße und danke an Jens und die anderen Entwickler für den tollen Job!
Albert
RaspberryMatic , Rpi4B, SSD, RPI-RF-MOD, 1x LAN-, 1x LAN RF Gateway, 90 HM-Geräte, HPCL (Prod)
RPI4B, 8GB, SSD, Docker: RaspberryMatic RPI-RF-MOD (Test)
RPI4B, 4GB, SSD, Influx-DB, Grafana, OWFS, 1-W, KNX, NodeRed, CometVisu (Prod)

ptweety
Beiträge: 522
Registriert: 07.01.2017, 16:48
System: Alternative CCU (auf Basis OCCU)
Hat sich bedankt: 48 Mal
Danksagung erhalten: 66 Mal

Re: R-Matic Container erhält neue IP-Adresse nach Docker Start

Beitrag von ptweety » 24.02.2021, 21:32

Na, wenn innerhalb deines Docker-Netzes sowohl die CCU als auch nodered laufen, dann verwendest du einfach in nodered den Hostnamen der CCU.

Code: Alles auswählen

  ccu:
    <<: *default-app
    container_name: homematic-raspi
    image: ghcr.io/jens-maus/raspberrymatic:latest
    hostname: homematic-raspi

Code: Alles auswählen

  nodered:
    <<: *default-app
    container_name: nodered
    image: nodered/node-red:latest
    hostname: nodered
Bildschirmfoto 2021-02-24 um 21.31.24.png


Edit: für nodered verwende ich tatsächlich dann aber auch noch macvlan, um den container nach "außen" erreichbar zu machen und den network_mode: host zu vermeiden.

Code: Alles auswählen

    networks:
      default:
      macvlan0:
        ipv4_address: 192.168.178.16
und

Code: Alles auswählen

networks:
    default:
      external:
        name: bridge0
    macvlan0:
      external: true

Antworten

Zurück zu „RaspberryMatic“