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
R-Matic Container erhält neue IP-Adresse nach Docker Start
Moderatoren: jmaus, Co-Administratoren
-
- 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
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)
RPI4B, 8GB, SSD, Docker: RaspberryMatic RPI-RF-MOD (Test)
RPI4B, 4GB, SSD, Influx-DB, Grafana, OWFS, 1-W, KNX, NodeRed, CometVisu (Prod)
-
- 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
Na, wenn innerhalb deines Docker-Netzes sowohl die CCU als auch nodered laufen, dann verwendest du einfach in nodered den Hostnamen der CCU.
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.
und
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
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
Code: Alles auswählen
networks:
default:
external:
name: bridge0
macvlan0:
external: true