Probleme installation avec Jeedom sous Docker Synology

J’ai Jeedom à jour sous un Docker sous Synology
Tout est ok : l’ancien plugin zwave est en fonctionnement et le nouveau est désactivé.

J’essaye d’installer MQTT pour migrer sur le nouveau plugin zwave
J’ai installé le plugin MQTT2 : choisi un Broker local
Appliquer rétablir les droits sur les dossiers dans réglages / systeme / configuration
Lancé les dépendances
Installé Mosquito
Et dans les logs je peux voir ceci :

[2022-11-20 06:07:46][INFO] : Start mqtt2d
[2022-11-20 06:07:46][INFO] : Log level on  : debug
[2022-11-20 06:07:46][INFO] : Socket port : 55035
[2022-11-20 06:07:46][INFO] : MQTT : mqtts://127.0.0.1:8883
[2022-11-20 06:07:46][INFO] : Username : jeedom
[2022-11-20 06:07:46][INFO] : Password : BdGuMaxDAMRRIFkh4uvQjxS6jrZs2NDDa2599TwZvaYReOI0QkSd3evaV7LVipZa
[2022-11-20 06:07:46][INFO] : PID file : /tmp/jeedom/mqtt2/deamon.pid
[2022-11-20 06:07:46][INFO] : Apikey : yApkHqdtUSh82v2US1PxfGcTt3eyDHT0B5eBnfFjjMwCQdJFS5hy38hM3R1gutY3
[2022-11-20 06:07:46][INFO] : Callback : http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php
[2022-11-20 06:07:46][INFO] : Cycle : 0.3
[2022-11-20 06:07:46][INFO] : Client key : /var/www/html/plugins/mqtt2/data/ssl/client.key
[2022-11-20 06:07:46][INFO] : Client crt : /var/www/html/plugins/mqtt2/data/ssl/client.crt
[2022-11-20 06:07:46][INFO] : CA : /var/www/html/plugins/mqtt2/data/ssl/ca.crt
[2022-11-20 06:07:46][INFO] : Connect to mqtt server
[2022-11-20 06:07:46][DEBUG] : HTTP listen on 127.0.0.1 port : 55035 started
[2022-11-20 06:07:46][ERROR] : Error on connection to mqtt server : Error: connect ECONNREFUSED 127.0.0.1:8883

Config de mqtt

Sauf que mon installation sous Docker de Jeedom ce n’est pas la bonne adresse : il tente de se connecter sur 127.0.0.1 alors que ma config réseau est : 172.17.0.3

J’ai désinstallé Mosquitto / realncer les dépendances / réinstallé mosquito et le plugin est toujours KO
Je ne sais pas quoi faire @Didier3L

Merci
Lemars

Bonjour,

Ces deux ip n’ont aucun rapport.

127.0.0.1 c’est l’ip qui correspond à localhost. Elle est toujours valable normalement.

L’autre ip c’est celle sur le lan ici il est géré par docker mais on s’en fiche.

Pour moi cette partie est correcte mais il faudrait voir pourquoi mosquitto refuse la connexion en localhost.

Sinon si voulez tourner sur container, le plus logique serait d’installer un autre container avec mosquitto séparé de jeedom et que jeedom s’y connecte (option broker distant dans ce cas)

merci j’y avais pensé mais je souhaiterais conserver tout « dans Jeedom »
Comment faire pour se connecter a mosquitto : vu que Jeedom est sous Docker
l’adresse IP de mon NAS : port du container 9082 de Jeedom pour acceder à Jeedom en 80.
mais pour mosquitto je ne sais pas ou configurer le renvoie de port ?
merci

J’ai rien compris.
Il n’y a aucune redirection de port à configurer puisque c’est en local

Je ne sais pas comment me connecter a mosquitto… quand c’est Jeedom qui l’a installé par le plugin mqtt

car mon jeedom n’a pas d’adresse IP physique
Pour acceder a jeedom c’est l’adresse IP du NAS avec le port 9082 et Docker renvoie vers le container Jeedom sur le port 80

Le container jeedom a quand même une adresse ip, il existe un réseau entre l’hôte et le container, c’est l’adresse 172.17.0.3.
Donc cette adresse est utilisable sur jeedom pour se parler à lui même, comme l’est 127.0.0.1.

Pour qu’une autre machine, que ce soit un autre container ou une machine sur un autre réseau (ton lan ou internet), il y a des configs à faire mais ca on s’en fiche puisque c’est pas le cas ici.

mais pourquoi mosquito ne fonctionne pas ? le plugin mqtt est KO
Didier @Didier3L tu arrives a le faire fonctionner merci?

Et si tu essaies de te connecter en non-sécurisé (1883 au lieu de 8883), ça fonctionne ?

1 « J'aime »

Pas de problème pour moi
Mais je ne l’utilise que très rarement pour des essais
Ton conteneur est en mode host 172.17.0.3 ne me semble pas la bonne adresse
Moi je suis en réseau macvlan

J’ai réessayé : broker local → NOK
broker distant et j’ai mis 127.0.0.1 et port 1883 et 8883 → NOK

J’ai bien rétablie les droits des dossiers et fichiers

J’ai aussi désinstallé hier soir désintallé Mosquitto manuellement avec :

sudo apt-get purge --remove mosquitto*

Puis réinstallé Mosquitto à partir du #plugin-mqtt2 et toujours demon NOK

Pour info j’ai l’ancien plugin Zwave qui est actif et utilisé
Et le nouveau ZWave qui est inactif
J’essaye d’abord de connecter mqtt à mosquitto pour faire la bascule

Et broker distant avec l’ip de la machine ? 172…

Pas moyen avec 172.17.0.2 en mqtt 1883 et en mqtts 8883…
je ne comprends pas d’ou vient mon souci

peut on lancer un commande en ssh pour vérifier si mosquitto est bien créé ?

toujours la meme erreur :

[2022-11-24 16:31:56][INFO] : Start mqtt2d
[2022-11-24 16:31:56][INFO] : Log level on  : debug
[2022-11-24 16:31:56][INFO] : Socket port : 55035
[2022-11-24 16:31:56][INFO] : MQTT : mqtts://127.0.0.1:8883
[2022-11-24 16:31:56][INFO] : Username : jeedom
[2022-11-24 16:31:56][INFO] : Password : XXXXXXXXXXXX
[2022-11-24 16:31:56][INFO] : PID file : /tmp/jeedom/mqtt2/deamon.pid
[2022-11-24 16:31:56][INFO] : Apikey : XXXXXXXXXXXXXXXXXXXX
[2022-11-24 16:31:56][INFO] : Callback : http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php
[2022-11-24 16:31:56][INFO] : Cycle : 0.3
[2022-11-24 16:31:56][INFO] : Client key : /var/www/html/plugins/mqtt2/data/ssl/client.key
[2022-11-24 16:31:56][INFO] : Client crt : /var/www/html/plugins/mqtt2/data/ssl/client.crt
[2022-11-24 16:31:56][INFO] : CA : /var/www/html/plugins/mqtt2/data/ssl/ca.crt
[2022-11-24 16:31:56][INFO] : Connect to mqtt server
[2022-11-24 16:31:57][DEBUG] : HTTP listen on 127.0.0.1 port : 55035 started
[2022-11-24 16:31:57][ERROR] : Error on connection to mqtt server : Error: connect ECONNREFUSED 127.0.0.1:8883

Le port socket interne est bien le : 55035 ?

merci

en attendant j’ai trouvé une solution en appliquant a la lettre ce tuto pour créer un mosquitto distant :

et pour utiliser l’éditeur vim : quelques astuces :

mais dommage j’aurais vraiment préférer que tout reste dans Jeedom avec un broker local : beaucoup plus simple à maintenir si changement de hardware

Vu ton erreur, Mosquitto n’est pas lancé. Tu peux voir dans les logs d’installation des dépendances si Mosquitto s’est bien installé. Peut-être qu’il y a un souci dans l’installation. Ensuite je ne sais pas qui lance Mosquitto, dans les logs, aucune indication de lancement par le plugin.

PS: Je vais supprimer mon message précédent, finalement, ce n’est pas le même problème.

Pour info j’avais installé mosquitto dans un conteneur Docker

docker run \
--name=mosquitto 
-itd \
-p 1883:1883 \
-v /volume1/docker/mosquitto/config:/mosquitto/config \ 
-v /volume1/docker/mosquitto/data:/mosquitto/data \
-v /volume1/docker/mosquitto/log:/mosquitto/log \
-v /volume1/docker/mosquitto/config/mosquitto.conf:/mosquitto/config/mosquitto.conf \
eclipse-mosquitto:latest

voici les logs mais je ne trouve pas les logs des dépendances : je n’ai que ceux la :

[2022-11-26 17:55:04][INFO] : Démarrage du démon MQTT Manager : sudo  /usr/bin/node /var/www/html/plugins/mqtt2/resources/mqtt2d/mqtt2d.js --loglevel debug --socketport 55035 --mqtt_server mqtts://127.0.0.1:8883 --client_key /var/www/html/plugins/mqtt2/data/ssl/client.key --client_crt /var/www/html/plugins/mqtt2/data/ssl/client.crt --ca /var/www/html/plugins/mqtt2/data/ssl/ca.crt --username jeedom --password YYYYYY --callback http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php --apikey ZZZZZZZZZZZ --cycle 0.3 --pid /tmp/jeedom/mqtt2/deamon.pid
[2022-11-26 17:55:35][ERROR] : Impossible de démarrer le démon MQTT Manager, vérifiez les logs

et


[2022-11-26 16:50:05][INFO] : Start mqtt2d
[2022-11-26 16:50:05][INFO] : Log level on  : debug
[2022-11-26 16:50:05][INFO] : Socket port : 55035
[2022-11-26 16:50:05][INFO] : MQTT : mqtts://127.0.0.1:8883
[2022-11-26 16:50:05][INFO] : Username : jeedom
[2022-11-26 16:50:05][INFO] : Password : YYYYYYYY
[2022-11-26 16:50:05][INFO] : PID file : /tmp/jeedom/mqtt2/deamon.pid
[2022-11-26 16:50:05][INFO] : Apikey : ZZZZZZZZZz
[2022-11-26 16:50:05][INFO] : Callback : http://127.0.0.1:80/plugins/mqtt2/core/php/jeeMqtt2.php
[2022-11-26 16:50:05][INFO] : Cycle : 0.3
[2022-11-26 16:50:05][INFO] : Client key : /var/www/html/plugins/mqtt2/data/ssl/client.key
[2022-11-26 16:50:05][INFO] : Client crt : /var/www/html/plugins/mqtt2/data/ssl/client.crt
[2022-11-26 16:50:05][INFO] : CA : /var/www/html/plugins/mqtt2/data/ssl/ca.crt
[2022-11-26 16:50:06][INFO] : Connect to mqtt server
[2022-11-26 16:50:06][DEBUG] : HTTP listen on 127.0.0.1 port : 55035 started
[2022-11-26 16:50:06][ERROR] : Error on connection to mqtt server : Error: connect ECONNREFUSED 127.0.0.1:8883
1 « J'aime »

comment savoir si mosquitto est bien installé ?
et s’il a bien démarrer ?
merci

Tu as choisis « Broker local », or tu es dans un conteneur, je ne suis pas sur que ça fonctionne. Le plugin utilise systemctl pour gérer le démon et n’est pas utilisable dans un conteneur. Je pense que tu es obligé de créer Mosquitto dans un autre conteneur, soit avec Jeedom « Broker local docker », soit toi-même ailleurs (l’autre mode). Si tu veux tout dans un conteneur, il faut un peu de maitrise pour créer sa propre image.

1 « J'aime »

J’aimerais bien apprendre
Merci

cela ne fonctionne pas chez moi :


pourtant j’ai bien créer les repertoires data config et log
Capture2

suis perdu