Help :( ... Docker et MQTT manager pour zigbeelinker

Bonjour a tous,

Mon Jeedom tourne sur raspberry 3 B+, dernière version (4.3.15)

J’ai un problème avec mqtt et docker, qui dépasse mes compétences, je tourne en rond et ai tout tenté … mais la je cherche de l’aide pour savoir ce que j’ai raté.

contexte :
j’ai pour l’instant 2 plug-in différents qui ont besoin de mqtt, le kroomba qui historiquement gère mes 2 robot aspirateur et marche très bien, et récemment je suis passer sur le plug in zigbee à zigbeelinker

Depuis peu je test les interrupteurs Legrand green power (pas de pile / pas de fils), j’ai donc installé un autre plug-in que le zigbee officiel car il ne les gère pas. (aucun équipements en zigbee, mais j’ai quand même une conbee II, pour ne pas être bridé sur un potentiel achat)

A des fins de test j’ai suivi la doc ( je voulais voir si avec la clé j’étais capable de choper le signal de l’interrupteur) et installer complètement zigbeelinker, et mon interrupteur était très bien reconnu et marchais bien.

Sauf que dans l’installe complète, il Install un serveur mqtt, et que du coup celui de kromba (mqtt manager) ne peut pas marcher en même temps.

Après quelques recherches sur le forum j’ai trouver le poste très bien détaillé qui explique comment faire pour garder le mqtt manager et associé le plug-in zigbeelinker dessus.

J’ai donc tout désinstallé proprement (je pense) les 2 plug-in, puis le serveur moquitto en ligne de commande directement sur le raspbery. reboot le tout …

J’ai ré installer kroomba, qui a ré installé mqtt manager tout remarche.

J’ai donc les plug-in qui marcfhe bien individuelement …

J’ai re désinstallé kroomba, pour suivre le poste de l’installation docker management + mqtt management et c’est la que je vrille du cerveaux depuis une semaine…

Mon docker me créé un objet mqtt (que j’ai du crée moi meme et qui est impossible a supprimé il reviens toujours malgré des supprimes reboot etc …

Mon mqtt manager en mode broker local docker trouve bien le docker et les bon port, mais le démon refuse de se lancer rien n’y fait …

du coup le plug-in kroomba et zibeelinker ne fonctionne pas …

Partant en trouble shooting, je prend tout depuis le debut (plugin docker) il s’avère que j’ai le message sur docker manager du cron erronné ?

image

voici les log des dépendances

les log du docker lui meme me met cela :

si quelqu’un a une idée je suis à bout de connaissance, 3 semaines que je suis sur cet interrupteur, je touche au but mais ne m’en sort pas

1 « J'aime »

Bonjour,

A priori si vous avez #plugin-kroomba et #plugin-mqtt2 qui fonctionne il ne faut plus les desinstaller

Pour #plugin-zigbeelinker il faudrait juste lui donner les infos du serveur mosquitto déjà géré par mqtt2 (sauf s’il sait les récupérer tout seul comme le fait kroomba)

Edit: #plugin-docker2 n’est pas nécessaire sauf si vous tenez absolument à installer votre mosquitto en docker

Edit2: attention ce sont bien les plugin docker2 et mqtt2 dont il est question, les autres sont des plugins complètement différent. J’ai corrigé les tags

Bonjour Mips,

il ne les récupère pas tous seul hélas, puis-je me passer du plug in docker ?

surla page de mqtt pas de plug in abonné zigbeelinker, (en meme temps le daemon ne demarre pas)

Oui je pense, voir mon edit

Normal, s’il ne récupère pas les infos, qu’il ne parle pas à mqtt2, le plugin mqtt2 n’en aura pas connaissance donc pas abonné. Mais ça fonctionnera quand même.
Il faut configurer à la main l’adresse le user et password dans zigbeelinker je suppose; j’ignore où exactement car je ne connais pas le plugin.

je ne sais pas du tout a quoi servent ou pourraient servir docker2 et mqtt2 je ne connais pas grand chose a cela, j’ai juste suivi les indications =)

qu’elle est la bonne démarche je déinstalle docker et le mosquitto du plugin mqtt (broker local docker) pour remettre un broker local simplement ?

1 « J'aime »

1 - désinstaller toute version de mosquitto, docker et mqtt2 et rebooter votre jeedom
2 - vérifiez qu’il n’y a plus de processus mosquitto.
3 - installez docker2
4 - installez mqtt2 et faites une install local docker
5 - sur mqqt2, vous devez avoir les identifiants de connexion à mosquitto de type jeedom:untreslongmotdepasse
6 - vérifier que vous avez un process mosquitto qui tourne
7 - installez zigbee2mqtt en sélectionnant zigbee2mqtt + client mqtt
8 - parametrez le client mqtt sur z2m avec les données suivantes :
Adresse IP localhost
Port 1883
Login jeedom
Pwd untreslongmotdepasse ( cf mqtt2)

Le démon Z2m doit être vert

A noter que Z2m n’est pas considéré comme un plugin abonné. Il n’apparaît donc pas côté mqtt2

Norbert

La même chose est possible sans docker2 en choisissant install broker local, au choix

Bonjour Ngrataloup, merci pour votre retour,

votre étape 1 ok je sais faire (je pense), uniquement via jeedom ou il a des lignes de commande en ssh pour supprimer proprement ensuite ?
étape 2 je vérifie comment ? (désolé vraiment ^^)
3 4 5 pas de souci j’ai du le faire quelque fois je vois bien
6 - euh de nouveau je fais comment ? en vérifiant le status du daemon de docker ?
7 et 8 devrait aller

merci d’avance pour les précisions, pas toujours simple de suivre les experts =)

(c’est bien noté pour la partie abonné sur mqtt2, merci de l’info)

Edit : J’ai trouver ton post qui explique les ligne de commande pour supprimer comme il faut

Vérifiez via ssh

dpkg -l mosquitto

Si ça vous renvoie une ligne qui commence par ii, faire

sudo apt-get remove mosquitto

Pour vérifier

ps -ef | grep mosquitto

j’ai suivi le poste ou vous expliquez comment bien nettoyer,

les commandes que vous m’avez indiqués après reboot donne ca
image

cela veux dire que c’est ok je peux passer à l’étape 3 ?

Oui, c’est ok, étape 3

1 « J'aime »

même punition pour docker 2 …; le message du cron

je continue ?

Oui, on réglera après le pb du cron

Norbert

mqtt ne genere aucun login / mot de passe, d’apres les log il ne trouve pas de docker (pourtant cela en a bien créé un sur docker …)

+ echo '*******************Begin of package installation******************'
*******************Begin of package installation******************
+ touch /tmp/jeedom_install_in_progress_mqtt2
+ echo 1
+ echo 2
+ sudo chmod +x /var/www/html/core/class/../../resources/install_nodejs.sh
+ sudo /var/www/html/core/class/../../resources/install_nodejs.sh
Hit:1 http://raspbian.raspberrypi.org/raspbian buster InRelease
Hit:2 http://archive.raspberrypi.org/debian buster InRelease
Get:3 https://download.docker.com/linux/debian buster InRelease [54.0 kB]
Hit:4 https://linux.teamviewer.com/deb stable InRelease
Hit:5 https://deb.nodesource.com/node_16.x buster InRelease
Fetched 54.0 kB in 2s (27.8 kB/s)
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
apt-utils is already the newest version (1.8.2.3).
build-essential is already the newest version (12.6).
git is already the newest version (1:2.20.1-2+deb10u8).
lsb-release is already the newest version (10.2019051400+rpi1).
The following packages were automatically installed and are no longer required:
  libev4 libuv1 libwebsockets8
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 51 not upgraded.
[Check Version NodeJS actuelle : v16.19.1 : [  OK  ]
[Check Prefix : /usr and sudo prefix : /usr and www-data prefix : /usr : [  OK  ]
+ echo 3
+ sudo chmod +x /var/www/html/core/class/../../resources/install_nodejs.sh
+ sudo /var/www/html/core/class/../../resources/install_nodejs.sh
Hit:1 http://raspbian.raspberrypi.org/raspbian buster InRelease
Hit:2 http://archive.raspberrypi.org/debian buster InRelease
Hit:3 https://linux.teamviewer.com/deb stable InRelease
Get:4 https://download.docker.com/linux/debian buster InRelease [54.0 kB]
Hit:5 https://deb.nodesource.com/node_16.x buster InRelease
Fetched 54.0 kB in 2s (28.2 kB/s)
Reading package lists...
Reading package lists...
Building dependency tree...
Reading state information...
apt-utils is already the newest version (1.8.2.3).
build-essential is already the newest version (12.6).
git is already the newest version (1:2.20.1-2+deb10u8).
lsb-release is already the newest version (10.2019051400+rpi1).
The following packages were automatically installed and are no longer required:
  libev4 libuv1 libwebsockets8
Use 'sudo apt autoremove' to remove them.
0 upgraded, 0 newly installed, 0 to remove and 51 not upgraded.
[Check Version NodeJS actuelle : v16.19.1 : [  OK  ]
[Check Prefix : /usr and sudo prefix : /usr and www-data prefix : /usr : [  OK  ]
+ echo 4
+ cd /var/www/html/core/class/../../plugins/mqtt2/resources/mqtt2d
+ rm -rf node_modules
+ sudo npm install
npm WARN deprecated har-validator@5.1.5: this library is no longer supported
npm WARN deprecated uuid@3.4.0: Please upgrade  to version 7 or higher.  Older versions may use Math.random() in certain circumstances, which is known to be problematic.  See https://v8.dev/blog/math-random for details.
npm WARN deprecated request@2.88.2: request has been deprecated, see https://github.com/request/request/issues/3142

added 147 packages, and audited 148 packages in 21s

14 packages are looking for funding
  run `npm fund` for details

1 moderate severity vulnerability

Some issues need review, and may require choosing
a different dependency.

Run `npm audit` for details.
+ chown -R www-data:www-data jeedom mqtt2d.js node_modules package-lock.json package.json
+ echo 5
+ php /var/www/html/core/class/../php/jeecli.php plugin dependancy_end mqtt2
Generating RSA private key, 2048 bit long modulus (2 primes)
........................+++++
......................+++++
e is 65537 (0x010001)
Generating RSA private key, 2048 bit long modulus (2 primes)
...........................................................+++++
..+++++
e is 65537 (0x010001)
Signature ok
subject=C = FR, ST = Paris, L = Paris, O = jeedom, CN = jeedom-mosquitto
Getting CA Private Key
docker: Cannot connect to the Docker daemon at unix:///var/run/docker.sock. Is the docker daemon running?.
See 'docker run --help'.
PHP Fatal error:  Uncaught Exception: Erreur d'exécution de la commande : sudo  docker-compose -f /tmp/6250e24ef8a98d9ac989.yml up -d --force-recreate 2>&1 (1) => ["Cannot connect to the Docker daemon at unix:\/\/\/var\/run\/docker.sock. Is the docker daemon running?"] in /var/www/html/plugins/docker2/core/class/docker2.class.php:42
Stack trace:
#0 /var/www/html/plugins/docker2/core/class/docker2.class.php(463): docker2::execCmd('sudo  docker-co...', 1, NULL)
#1 /var/www/html/plugins/mqtt2/core/class/mqtt2.class.php(268): docker2->create()
#2 /var/www/html/plugins/mqtt2/core/class/mqtt2.class.php(68): mqtt2::installMosquitto('docker')
#3 /var/www/html/core/php/jeecli.php(61): mqtt2::dependancy_end()
#4 {main}
  thrown in /var/www/html/plugins/docker2/core/class/docker2.class.php on line 42
+ rm /tmp/jeedom_install_in_progress_mqtt2
+ echo '*******************End of package installation******************'
*******************End of package installation******************

je suppose que ce n’est pas bon signe ? :frowning:

Bonsoir à tous,

après plusieurs échange avec ngrataloup et quelques essais , nous avons fini par nous passer de Docker2 qui ne lançais jamais son daemon.

installation de mqtt manager en broker local + Zigbee2mqtt

Le plug-in Kroomba refonctionne
Le plug-in Zigbeelinker se lance nickel

après passage sur le bon canal de ma clé Zigbee Conbee II (11), interrupteur Legrand Céliane sans fils / sans pile est remonté du premier coup !

J’en profite pour remercié la réactivité du forum et de la communauté qui est une vrai mine d’information déjà de base, mais qui accorde aussi son temps aux autres.

La connaissance ne vaut que si elle est partagé entre tous !

1 « J'aime »

Ce sujet a été automatiquement fermé après 24 heures suivant le dernier commentaire. Aucune réponse n’est permise dorénavant.