NEWS
iobroker im Docker - hm.rpc keine Verbindung
-
Ich habe jetzt zwar die Geräte von der Raspberrymatic drin, aber die Werte sehen irgendwie komisch aus:
So sollte es eigentlich auch aussehen, wie in der ioBroker Version auf meinem Linux Rechner:
-
@smarti2015 hm-rega richtig konfiguriert?
-
Na da hab ich nur die IP vom Raspberrymatic hinterlegt, mehr hab ich da nie gemacht.
-
@smarti2015 sagte in iobroker im Docker - hm.rpc keine Verbindung:
mehr hab ich da nie gemacht.
und den Container auch in der RM in der Firewall freigegeben?
-
@homoran sagte in iobroker im Docker - hm.rpc keine Verbindung:
nd den Container auch in der RM in der Firewall freigegeben?
Die Firewall auf dem Docker Ubuntu Server ist inaktiv.
-
@smarti2015 sagte in iobroker im Docker - hm.rpc keine Verbindung:
Die Firewall auf dem Docker Ubuntu Server ist inaktiv.
danach habe ich nicht gefragt!
@homoran sagte in iobroker im Docker - hm.rpc keine Verbindung:
in der RM in der Firewall
wobei RM für RaspberryMatic steht
-
@homoran sagte in iobroker im Docker - hm.rpc keine Verbindung:
wobei RM für RaspberryMatic steht
Oh sry hab ich falsch verstanden, dacht du meinst vielleicht Real-Machine. Ok also in der RM hab ich unter Einstellungen > Firewall konfigurieren die IP von Container und vom Docker eingetragen, ist das an dieser Stelle richtig?
-
@smarti2015 sagte in iobroker im Docker - hm.rpc keine Verbindung:
ist das an dieser Stelle richtig?
definitiv nicht!
Du hast die rpc für alle IPs freigegeben, dann brauchst du auch nicht nochmal einzelne IPs unten freizugeben.
Dafür hast du alle Ports gesperrt und nur den 2001 freigegebenDas passt nicht
-
@homoran
Oh also die IPs wieder raus und oben auf Port offen stellen? -
@smarti2015 sagte in iobroker im Docker - hm.rpc keine Verbindung:
Oh also die IPs wieder raus und oben auf Port offen stellen?
Was ja irgendwie am Sinn einer Firewall vorbeigeht.
Aber da können auch noch ganz andere Effekte wegen deines Container zu dem Problem führen.
Da kenne ich mich nicht mit aus, ich weiß schon warum ich mir keine Container antue -
Ok ach dann lass ich das so wie es grad ist mit dem Linux ioBroker, der läuft ja super. Dachte nur in einem Container ist das auch ne schicke Sache, aber da gibt es mir jetzt einfach zu viele Probleme. Ich danke euch!
-
Hallo zusammen,
ich hatte dasselbe Proben und habe es nun gelöst. Die Lösung ist eigentlich einfach: Die Ports müssen im Docker-Container freigegeben werden. Der Docker-Container von iobroker hört per default nur auf 8081 und 8082. Da iobroker für viele Adapter gemacht wurde, müssen alle für die jeweiligen Adapter benötigten Ports gesondert freigegeben werden.
Der Docker-Container muss für Homematic hinsichtlich der Ports daher wie folgt erweitert werden:
HM-Rega:
keine Anpassung notwendig (benötigt keine gesonderten Ports)HM-RPC rfd-Daemon:
Port 2001 (für HTTP) bzw. 42001 (für HTTPS) verbindenHM-RPC HomeMatic IP-Daemon:
Port 2010 (für HTTP) bzw. 42010 (für HTTPS) verbindenHM-RPC CuX-Daemon:
Port 8700 (für HTTP) bzw. 8701 (für HTTPS) verbindenIn den Adaptereinstellungen muss bei rfd und HmIP jeweils [IPv4] 0.0.0.0 als Adapter-Adresse eingetragen werden, da hostseitig nur die internen Adressen (172....) bzw. die Loopbackadresse (127.0.0.1) zur Verfügung stehen und für eine Callback-Adresse aber die externe benötigt wird. Deshalb muss der Adapter auf alle Adressen hören. Beim Port nichts eintragen (systemseitig wird dann 0 eingetragen - das ist ausreichend). Damit hört der Adapter auf alle eingehenden Anfragen. Da die Homematic-Zentrale die Anfragen an den Port zurückzusenden scheint, an dem sie dort eingehen (z. B. 42001) funktioniert die Verbindung dann, da der Port auch beim Docker geöffnet ist und der Adapter automatisch darauf lauscht.
Bei meinem Docker-Container sind somit aktuell folgende Ports durchgeleitet:
- 8081:8081
- 8082:8082
- 42001:42001
- 42010:42010
- 8701:8701
Homematic-Seitig muss darauf geachtet werden, dass die Ports dann in der Firewall freigegeben sind:
Noch ein Tipp an der Stelle: Generell werden bei einem Docker-Container bei der Aktualisierung immer alle Daten gelöscht. Das bedeutet für den iobroker, dass auch alle Konfigurationen und historischen Daten weg sind. Daher ist es bei Docker-Containern - so auch beim iobroker - obligatorisch, dass man das Datenverzeichnist extern verlinken kann und so Daten persistent speichern kann. Das sollte jeder beim Anlegen des Containers (später geht es nicht mehr) machen. Infos gibt es hier: https://hub.docker.com/r/buanet/iobroker/
Dort dann unter der Übersichrift "Persistent data".Ich hoffe das hilft euch.
Grüße
-
Ergänzung,
wenn man Probleme mit bereits durch andere Applikationen belegten Ports auf dem Host System hat, kann man auch ein macvlan Netz anlegen und damit dem Container eine richtige eigene ip im Netz geben. -
Eventuell macht es aber auch einen Unterschied, ob man den Container im Host oder Bridgemodus betreibt .
Ich habe den Haken bei „Dasselbe Netzwerke nutzen“ …. gesetzt .
Ich habe noch bei keiner Iobroker Container Version Ports mappen müssen .