Hello,
Euh c’est normal que je tombe sur une page « créer votre compte Gladys » après la mise à jour…
Je n’ai plus accès à mon compte.
Hello,
Euh c’est normal que je tombe sur une page « créer votre compte Gladys » après la mise à jour…
Je n’ai plus accès à mon compte.
Salut @Olivier.L57,
J’ai déplacé ton sujet dans la bonne catégorie ![]()
Pas de panique sur le principe : une mise à jour de Gladys ne supprime pas les données. Si tu retombes sur l’écran « Créer votre compte », c’est en général que Gladys ne retrouve plus sa base de données.
Ce qui s’est probablement passé
Avec Docker, un container est jetable : à chaque mise à jour, l’ancien est supprimé et un nouveau est créé. Pour que tes données survivent, elles doivent être stockées en dehors du container, sur ton disque. C’est le rôle de cette option dans la commande d’installation :
-v /var/lib/gladysassistant:/var/lib/gladysassistant
Si Gladys a été lancé sans cette option, la base de données était à l’intérieur du container, et elle a disparu avec lui lors de la mise à jour.
Peux-tu vérifier ?
docker ps -a (pour voir si l’ancien container existe encore)docker inspect --format '{{json .Mounts}}' gladys (pour voir où Gladys stocke ses données)Les pistes pour récupérer tes données
docker ps -a, tes données sont peut-être toujours dedans, et on pourra les récupérer. Surtout, ne le supprime pas !Si aucune des deux ne s’applique, je suis désolé, mais il n’y aura malheureusement pas de moyen de retrouver les données. Dans ce cas, réinstalle Gladys avec la commande de la doc, et ça ne se reproduira plus aux prochaines mises à jour.
Merci de ta réponse. J’ai cliqué sur mise à jour et j’ai bien fait l’installation en suivant le tuto en ligne avec Docker.
olivier@serveurgladys:~$ sudo docker ps -a
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c5ad05e4636a eclipse-mosquitto:2.0.15 « /docker-entrypoint.… » 25 minutes ago Up 25 minutes eclipse-mosquitto
2cb88417b8b2 gladysassistant/gladys:v5 « docker-entrypoint.s… » 25 minutes ago Up 4 minutes gladys
30566e574c77 koenkk/zigbee2mqtt:2.14.2 « docker-entrypoint.s… » 26 hours ago Up 26 hours gladys-z2m-zigbee2mqtt
9c7976f669c2 eclipse-mosquitto:2.0.15 « /docker-entrypoint.… » 26 hours ago Up 26 hours gladys-z2m-mqtt
56452c1aceff nickfedor/watchtower:latest « /watchtower --clean… » 28 hours ago Up 28 hours (healthy) 8080/tcp watchtower
75a86d7c6f69 nodered/node-red:5.0 « ./entrypoint.sh » 3 days ago Up 2 days (healthy) 0.0.0.0:1881->1880/tcp, [::]:1881->1880/tcp gladys-node-red
sudo docker inspect --format ‹ {{json .Mounts}} › gladys
[{« Type »:« bind »,« Source »:« /var/lib/gladysassistant »,« Destination »:« /var/lib/gladysassistant »,« Mode »:« »,« RW »:true,« Propagation »:« rprivate »},{« Type »:« bind »,« Source »:« /var/run/docker.sock »,« Destination »:« /var/run/docker.sock »,« Mode »:« »,« RW »:true,« Propagation »:« rprivate »}]
ls -la /var/lib/gladysassistant
total 1148
drwxr-xr-x 7 root root 4096 Oct 18 09:22 .
drwxr-xr-x 55 root root 4096 Oct 17 22:49 ..
drwxr-xr-x 8 root root 4096 Oct 22 16:06 external-integrations
-rw-r–r-- 1 root root 872448 Oct 17 20:42 gladys-production.db
-rw-r–r-- 1 root root 274432 Oct 17 20:29 gladys-production.duckdb
drwxr-xr-x 2 root root 4096 Oct 25 15:03 homekit
drwxr-xr-x 2 1883 1883 4096 Oct 18 06:09 mosquitto
drwxr-xr-x 4 olivier olivier 4096 Oct 21 16:23 node-red
drwxr-xr-x 4 root root 4096 Oct 18 09:22 zigbee2mqtt
Merci pour les retours, c’est très utile !
Bonne nouvelle : ta base de données est toujours sur ton disque
Le fichier /var/lib/gladysassistant/gladys-production.dbCe fichier se trouve en dehors des dossiers de cette session ; il ne peut donc pas être ouvert ici. est bien là.
Par contre, deux choses m’intriguent :
gladys-production.db-wal à côté, alors qu’il devrait exister quand Gladys tourne.Ma conclusion : ton container Gladys n’utilise pas ce fichier. Il lui manque très probablement la variable SQLITE_FILE_PATH. Sans elle, Gladys range sa base à l’intérieur du container, qui est supprimé à chaque mise à jour. D’ailleurs, ton container n’a que 2 volumes alors que la commande actuelle de la doc en a 5 : il a dû être créé avec une autre commande, peut-être autour du 17 octobre ?
Pour confirmer, peux-tu m’envoyer le résultat de :
sudo docker inspect --format '{{json .Config.Env}}' gladys
Si SQLITE_FILE_PATH n’apparaît pas dans la liste, c’est bien ça.
Pour récupérer ta base (si c’est confirmé) :
Fais d’abord une copie de sécurité :
sudo cp -a /var/lib/gladysassistant/gladys-production.db /var/lib/gladysassistant/gladys-production.db.bak
sudo cp -a /var/lib/gladysassistant/gladys-production.duckdb /var/lib/gladysassistant/gladys-production.duckdb.bak
Supprime le container actuel. Tes données sur le disque ne sont pas touchées :
sudo docker stop gladys && sudo docker rm gladys
Recrée-le avec la commande de la doc (Installation avec Docker | Gladys Assistant), sans rien retirer. Surtout pas la ligne -e SQLITE_FILE_PATH=/var/lib/gladysassistant/gladys-production.db.
Gladys devrait alors redémarrer avec ton compte, tes appareils et tes scènes tels qu’ils étaient le 17 octobre au soir.
Je préfère être honnête : ce que tu as fait entre le 17 octobre et aujourd’hui était stocké dans l’ancien container, que la mise à jour a supprimé. Ces modifications-là sont malheureusement perdues, sauf si tu as une sauvegarde Gladys Plus plus récente. Dans ce cas, tu peux la restaurer depuis l’écran de création de compte.
Une fois le container recréé correctement, les prochaines mises à jour garderont bien tes données.
~$ sudo docker inspect --format ‹ {{json .Config.Env}} › gladys
[« PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin »,« NODE_VERSION=24.22.1 »,« YARN_VERSION=1.22.22 »,« LD_LIBRARY_PATH=/lib »,« NODE_ENV=production »,« SERVER_PORT=80 »,« GLADYS_OFFICIAL_RELEASE_IMAGE=true »]
Merci, c’est confirmé : SQLITE_FILE_PATH n’est pas dans la liste. Ton container a été créé sans aucune option -e (il manque aussi TZ), donc pas avec la commande de la doc. Gladys stockait sa base à l’intérieur du container, et la mise à jour l’a effacée en recréant le container.
On peut maintenant le recréer proprement pour qu’il utilise ta base du 17 octobre :
1. Copie de sécurité (on ne sait jamais) :
sudo cp -a /var/lib/gladysassistant/gladys-production.db /var/lib/gladysassistant/gladys-production.db.bak
sudo cp -a /var/lib/gladysassistant/gladys-production.duckdb /var/lib/gladysassistant/gladys-production.duckdb.bak
2. Suppression du container actuel (tes fichiers dans /var/lib/gladysassistant ne sont pas touchés) :
sudo docker stop gladys && sudo docker rm gladys
3. Création du container avec la commande officielle :
sudo docker run -d \
--log-driver json-file \
--log-opt max-size=10m \
--cgroupns=host \
--restart=always \
--privileged \
--network=host \
--name gladys \
-e NODE_ENV=production \
-e SERVER_PORT=80 \
-e TZ=Europe/Paris \
-e SQLITE_FILE_PATH=/var/lib/gladysassistant/gladys-production.db \
-v /var/run/docker.sock:/var/run/docker.sock \
-v /var/lib/gladysassistant:/var/lib/gladysassistant \
-v /dev:/dev \
-v /run/udev:/run/udev:ro \
-v /run/dbus:/run/dbus:ro \
gladysassistant/gladys:v5
4. Vérification : après une minute, ls -la /var/lib/gladysassistant doit montrer un fichier gladys-production.db-wal et une date de modification à jour sur gladys-production.db. Tu devrais pouvoir te connecter avec ton compte habituel.
Si tu retombes quand même sur l’écran « Créer votre compte », ne crée rien et reviens me voir.
Ce qu’il faut savoir : tu retrouveras Gladys tel qu’il était le 17 octobre au soir. D’après les dates de tes dossiers, tu as mis en place plusieurs choses après cette date (Zigbee2MQTT, MQTT, intégrations externes…). Elles ne seront donc pas configurées dans Gladys et il faudra les refaire. Bonne nouvelle quand même : le dossier zigbee2mqtt est sur ton disque, donc tes appareils Zigbee déjà appairés devraient être conservés côté Zigbee2MQTT. Normalement, il suffira de réactiver l’intégration et de ré-ajouter les appareils dans Gladys, sans les réappairer.
Désolé pour la galère ! Une fois le container recréé avec cette commande, les mises à jour ne toucheront plus à tes données.
Pas de souci, ça peut servir à d’autres. J’ai surtout eu des problèmes avec un conteneur externe. Tant que zigbee tourne.
Toujours en « /signup »
olivier@serveurgladys:~$ sudo cp -a /var/lib/gladysassistant/gladys-production.db /var/lib/gladysassistant/gladys-production.db.bak
olivier@serveurgladys:~$ sudo cp -a /var/lib/gladysassistant/gladys-production.duckdb /var/lib/gladysassistant/gladys-production.duckdb.bak
olivier@serveurgladys:~$ sudo docker stop gladys && sudo docker rm gladys
gladys
gladys
olivier@serveurgladys:~$ sudo docker run -d
–log-driver json-file
–log-opt max-size=10m
–cgroupns=host
–restart=always
–privileged
–network=host
–name gladys
-e NODE_ENV=production
-e SERVER_PORT=80
-e TZ=Europe/Paris
-e SQLITE_FILE_PATH=/var/lib/gladysassistant/gladys-production.db
-v /var/run/docker.sock:/var/run/docker.sock
-v /var/lib/gladysassistant:/var/lib/gladysassistant
-v /dev:/dev
-v /run/udev:/run/udev:ro
-v /run/dbus:/run/dbus:ro
gladysassistant/gladys:v5
8be09ef7542c877344fecfd3fdf6166d831c47ef0d463a02d4c83d9d07e87703
olivier@serveurgladys:~$ ls -la /var/lib/gladysassistant
total 2736
drwxr-xr-x 7 root root 4096 Oct 25 16:04 .
drwxr-xr-x 55 root root 4096 Oct 17 22:49 ..
drwxr-xr-x 8 root root 4096 Oct 22 16:06 external-integrations
-rw-r–r-- 1 root root 872448 Oct 17 20:42 gladys-production.db
-rw-r–r-- 1 root root 32768 Oct 25 16:04 gladys-production.db-shm
-rw-r–r-- 1 root root 440872 Oct 25 16:04 gladys-production.db-wal
-rw-r–r-- 1 root root 872448 Oct 17 20:42 gladys-production.db.bak
-rw-r–r-- 1 root root 274432 Oct 17 20:29 gladys-production.duckdb
-rw-r–r-- 1 root root 274432 Oct 17 20:29 gladys-production.duckdb.bak
drwxr-xr-x 2 root root 4096 Oct 25 15:03 homekit
drwxr-xr-x 2 1883 1883 4096 Oct 18 06:09 mosquitto
drwxr-xr-x 4 olivier olivier 4096 Oct 21 16:23 node-red
drwxr-xr-x 4 root root 4096 Oct 18 09:22 zigbee2mqtt
olivier@serveurgladys:~$
Merci pour le retour ! Gladys utilise maintenant bien la base qui est sur ton disque : le problème de fond est réglé, et les prochaines mises à jour garderont tes données.
Gladys a peut-être eu besoin de quelques secondes pour démarrer. Peux-tu attendre un peu, puis ouvrir http://<IP-de-ton-serveur>/login ?
Merci d’avoir documenté tout ça, ça servira à d’autres !
J’ai du recréer un compte.
Pour la configuration de Z2M je choisis quelle option ?
-Installation depuis Gladys
-Connexion à une installation existante
Il faudrait choisir l’option que tu avais choisi avant.