(Toutes mes excuses pour le mauvais français, j’utilise google translate.)
J’utilise docker-compose pour exécuter Gladys. J’ai configuré Zigbee2MQTT et cela fonctionne parfois. Mais chaque fois que le conteneur redémarre, le dongle USB n’est plus connecté. Le message indique « Aucun dongle USB Zigbee2mqtt n’est attaché à Gladys ».
Deux périphériques sont toujours répertoriés : /dev/ttyUSB0 et /dev/AMA0. Ce qui résout généralement le problème est de choisir un périphérique qui n’est pas sélectionné et de cliquer sur « Sauvegarder ». Peu importe lequel des deux est choisi.
Je dois pouvoir redémarrer les conteneurs sans surveillance, sans utiliser l’interface utilisateur pour modifier la configuration à chaque fois. Quelqu’un peut-il m’aider à comprendre ce qui ne va pas? Merci.
Le zigbee2mqtt container est en cours d’exécution et continue de fonctionner correctement. Je peux accéder à http://gladys-ip:8080/#/dashboard et voir les appareils. Mais gladys ne voit pas qu’il est en cours d’exécution. Ça montre « Aucun dongle USB Zigbee2mqtt configuré, veuillez vous rendre sur… » Puis je clique sur « Sauvegarder » et ça refonctionne.
Ce sont les containers qui tournent :
$ docker ps --all
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
eb14c756a72c gladysassistant/gladys:v4 "docker-entrypoint.s…" 6 minutes ago Up 6 minutes myhub_gladys_1
abcc0834603d containrrr/watchtower "/watchtower --clean…" 6 minutes ago Up 6 minutes 8080/tcp myhub_watchtower_1
322d22c2fa6a koenkk/zigbee2mqtt:latest "docker-entrypoint.s…" 3 days ago Up 3 days gladys-z2m-zigbee2mqtt
eb10f041a2a2 eclipse-mosquitto:2 "/docker-entrypoint.…" 8 days ago Up 8 days gladys-z2m-mqtt
Je n’ai pas réussi à déboguer ce problème. @pierre-gilles, avez-vous des suggestions ?
Watchtower a redémarré mon conteneur « myhub_gladys_1 » aujourd’hui, puis tous les appareils ont disparu.
Pour que cela fonctionne, je devais aller sur /dashboard/integration/device/zigbee2mqtt/setup et éteindre et rallumer « Activer Zigbee2MQTT ». Cela a redémarré les « gladys-z2m-mqtt » et « gladys-z2m-zigbee2mqtt » et tout a fonctionné à nouveau.
Lorsque Gladys échoue comme ça, je peux toujours accéder à http://:8080/#/dashboard et voir tous les appareils fonctionner correctement, donc ce n’est pas un problème avec le dongle ou le moustique/zigbee2mqtt. Que puis-je faire pour rendre Gladys plus stable ?
I can suggest you not using compose and follow documentation, mqtt and zigbee2mqtt are created outside the stack ( don’t know if this is the root cause). Compose have no value here.
The zigbee2mqtt service is not starting when the container restarts as it’s marked as « manually stopped ».
$ journalctl CONTAINER_NAME=gladys | grep -i zigbee2m
Oct 12 21:40:06 dpi02 b2c767401a3d[724]: 2022-10-12T21:40:06+0100 <info> service.startAll.js:30 () Service zigbee2mqtt was manually stopped, so it is ignored at startup
Oct 12 21:42:40 dpi02 b2c767401a3d[724]: 2022-10-12T21:42:40+0100 <info> init.js:47 () Zigbee2mqtt USB dongle attached to /dev/ttyUSB0
Oct 12 21:42:40 dpi02 b2c767401a3d[724]: 2022-10-12T21:42:40+0100 <info> installMqttContainer.js:105 (Zigbee2mqttManager.installMqttContainer) MQTT broker container successfully started
Oct 12 21:42:40 dpi02 b2c767401a3d[724]: 2022-10-12T21:42:40+0100 <info> installZ2mContainer.js:73 (Zigbee2mqttManager.installZ2mContainer) Zigbee2mqtt container successfully started
Oct 12 21:42:40 dpi02 b2c767401a3d[724]: 2022-10-12T21:42:40+0100 <info> subscribe.js:12 (Zigbee2mqttManager.subscribe) Subscribing to MQTT topic zigbee2mqtt/#
The log from init.js:47 does happen until I click Save settings in the UI, which as two minutes after the container started.
[edit] platform is Raspberry Pi OS on a v4 Pi
[edit2] looks like the service table in the database has not been updated for a long time:
$ echo "select enabled, updated_at, status from t_service where name = 'zigbee2mqtt';"|sqlite3 gladys-production.db
1|2022-09-18 23:17:48.594 +00:00|STOPPED
so I found the /dashboard/settings/service page and all services were set to Stopped. I don’t get why anything worked at all with it like that but whatever. I changed Zigbee2mqtt to Running and now the service starts as expected when the container restarts.
my bad. I didn’t realise the service was a separate thing to « Enable Zigbe2mqtt » being set on the Zigbe2mqtt configuration page. I have been using a bunch of Zigbee devices in Gladys for a few weeks without the service running!