Bonjour Je rencontre actuellement un souci avec le plugin
Voici le log d’erreur
Echec de la requête HTTP : http://10.0.0.20:3456/routine?routine=&device=G0913L0592420GN8 cURL error : Recv failure: Connection reset by peer
Je pense à un soucis de routage réseau. Mais je souhaites avoir un autre avis.
Voici ma configuration
Jeedom en conteneur Docker sous WSL2 en mode natif (Sans Docker for desktop)
Auparavant, j’était sous Docker / WSL avec Docker for Desktop. Cette configuration fonctionnait parfaitement. D’où mes soupçons sur les soucis de réseau (Hyper-V)
NodeJs est Ok - Le daemon est bon
La config Réseau Jeedom est Ok
Reset du cookies - Cookie Ok
Routage hyper sur le port 3456 Ok
Les appareils sont ok
netsh interface portproxy add v4tov4 listenport=3456 listenaddress=0.0.0.0 connectport=3456 connectaddress=172.31.207.34 (Adresse de la VM Hyper-V servant d'hôte à Docker)
netsh interface portproxy show all
Écouter sur ipv4 : Connecter à ipv4 :
Adresse Port Adresse Port
--------------- ---------- --------------- ----------
0.0.0.0 3456 172.31.207.34 3456
Test avec telnet 10.0.0.20 3456 OK
Du coup je me demande si nodejs a besoin d’un autre port de mappage a configurer.
Alors le plug-in se connecte à ton ip interne (celle que tu as configuré dans la config jeedom) ensuite niveau port c’est en effet celui la pour le demon, donc jeedom → demon mais aussi demon → jeedom qui utilise le port configuré aussi dans l’ip interne.
Ensuite il y a aussi le proxy qui est lancé pour capturer le cookie et puis stoppé. Toujours sur l’iP interne et Sur 3457 de mémoire et lui redirige vers internet. Je ne pense pas que ce proxy communique → jeedom de mémoire. Mais ton browser doit y accéder par contre.
Ton message m’a interpellé du coup !!! Et je m’aperçois qu’il faudrait que je fasse plus attention parfois
Problème dans la configuration de ma stack Docker
port :
3456:3457
3457:3457
Forcément si j’expose pas les ports comme il faut, ça marchera moins bien.
Du coup, je vois bien le comportement normal. le 3457 n’est pas sollicité au lancement de commande
En tout cas, merci pour l’échange. Cela m’a permis de déceler mon erreur.
En te souhaitant une bonne soirée (ou plutôt une bonne nuit pour toi je suppose).
Donc, pour rappel. Pour ceux qui sont intéressé d’avoir une configuration Docker /WLS2 (Sans Docker CE for desktop car top lourd) ou autre alternatives (style podman), ne pas oublié de mapper les ports 3456 ET 3457 sous powershell
netsh interface portproxy show all
Écouter sur ipv4 : Connecter à ipv4 :
Adresse Port Adresse Port
--------------- ---------- --------------- ----------
0.0.0.0 3456 AdresseHyperV 3456
0.0.0.0 3457 AdresseHyperV 3457
Ne pas oublier de l’adresse Hyper-V change a chaque démarrage de Windows, donc un petit script PS avec les droits élevé s’impose
A noter, si vous débuter dans Docker (Sans Docker CE Edge) et autre logiciel de conteneurisation sous WLS2, il vous faudra mapper les ports 80, 443, et ceux des services dont vous avez besoin.
Attention que de plus en plus de plugins requièrent docker d’être en mode host pour pouvoir faire du broadcast et/ou multicast ! (Ou mode macvlan probablement)
Tout a fait. Je suis en train de regarder cela pour palier au problème.
Pour ma part, j’utilise pas trop d’appareil nécessitant du Broadcast/Multicast. Mais au boulot j’ai initié un débat sur le multicast over docker. On va réfléchir à cela. Je suis dans un société de conseil en DevOps avec des experts certifiés Docker, Kubernetes etc… Pour ma part je suis certifié GCP, donc voir je regarde si, par le biais de IOT core, on peux pas arrivé a quelque chose. A plusieurs on devrait trouver quelque chose je pense xD).
D’ailleurs si des personnes cherchent des Conseils sur GCP, pas de soucis. Contactez moi.
Pour ma part, je gère mes sauvegardes (automatiquement) sur un Bucket GCP (5Go par mois gratuit en « Always Free Tier », je peux garder 1 mois de backup gratuit, et suppression automatique des > 30 jours) ainsi que d’autres données liées à la domotique et jeedom.
Actuellement je suis sur IOPT Core <==> Mqtt (et je regarde justement pour le multicast via ces services)