Démarrer démon mqtt_manager KO sous docker / debian 11

Bonjour,

Même problème pour moi (j’utilise docker sur un raspberry pour lancer jeedom)
Ce que j’ai compris c’est que deux systèmes cohabitent pour la gestion des services linux :

  • Le premier est basé sur SysV / init et fonctionne avec la commande service (exemple: service restart mosquitto), je pense que c’est ton cas.
  • Le deuxième est basé sur Systemd et fonctionne avec la commande systemctl (exemple: systemctl mosquitto restart)

Le démon mqtt2 repose sur systemd/systemctl comme on peut le voir dans le source du plugin mais mon image docker buster est configurée en init.d ce qui fait que, même si le package systemd est bien installé sur mon système j’ai l’erreur suivante :

System has not been booted with systemd as init system (PID 1). Can't operate.
Failed to connect to bus: Host is down

En fait il ne suffit pas que systemd soit installé, il faut aussi que l’image lancée par docker soit configurée pour cela, c’est un paramètre de boot du noyau.

J’ai modifié le fichier plugins/mqtt2/core/class/mqtt2.class.php en remplaçant ‹ systemctl restart mosquitto › par ‹ service mosquitto restart ›. Ça me permet d’activer mosquitto en cliquant sur le bouton orange ‹ Redémarrer Mosquitto › dans la page de configuration du plugin, et après le démon se lance mais malheureusement je n’ai pas encore trouvé comment faire pour qu’il se lance au démarrage de jeedom pour l’instant :smiling_face_with_tear: