MyZapp

Mettre à jour et sauvegarder l'application

Available in en es fr

Updated on 10/26/2026

Cette page s'adresse à l'administrateur technique d'une instance MyZapp installée sur ses propres serveurs (voir « Installer l'application sur ses serveurs »). Sur une instance hébergée par l'éditeur, les sauvegardes et les mises à jour sont assurées par l'hébergeur.

Ce qu'il faut sauvegarder

Une instance ne garde son état qu'à deux endroits :

  • la base PostgreSQL : toutes les donnĂ©es et tout le paramĂ©trage ;
  • le volume de donnĂ©es de l'application : sa configuration locale (avec les secrets chiffrĂ©s), les journaux et les fichiers dĂ©posĂ©s.

Les conteneurs eux-mĂȘmes ne contiennent rien Ă  garder : ils se recrĂ©ent Ă  l'identique depuis l'image. Sauvegardez aussi, Ă  part, les fichiers du serveur : .env, le dossier secrets/ et, s'il est utilisĂ©, le dossier views-override/. Conservez les clefs de sĂ©curitĂ© exportĂ©es Ă  l'installation avec la mĂȘme prudence.

Sauvegarder

Le script backup.sh, livré avec l'application, produit en une commande :

  • un dump de la base, db_ suivi de la date, au format de pg_restore (ce n'est pas un fichier SQL lisible) ;
  • une archive du volume de donnĂ©es, appdata_ suivi de la date.

Lancez-le depuis le dossier du fichier d'orchestration : ./backup.sh .env ./backups. Il garde les 10 derniĂšres sauvegardes de chaque type ; BACKUP_RETENTION_COUNT dans .env change ce nombre.

En option, réglées dans .env :

  • le chiffrement des sauvegardes (BACKUP_ENCRYPT=true, par mot de passe ou par clĂ© publique GPG) ;
  • une copie hors site vers une ou plusieurs destinations : FTP, stockage compatible S3, partage Windows, partage dĂ©jĂ  montĂ© ou serveur joignable en SSH (BACKUP_OFFSITE_TYPES). Par dĂ©faut, l'Ă©chec d'une copie hors site n'est qu'un avertissement ; BACKUP_OFFSITE_REQUIRED=true en fait une erreur.

L'application ne lance pas ce script d'elle-mĂȘme : planifiez-le sur le serveur, par exemple chaque nuit avec cron. La liste complĂšte des rĂ©glages figure en tĂȘte du script.

Restaurer

La mĂȘme procĂ©dure sert aprĂšs un incident et pour reconstruire une instance sur un nouveau serveur.

  1. DĂ©marrez seulement la base et arrĂȘtez l'application, pour qu'aucune migration ne s'applique pendant la restauration.
  2. Si les sauvegardes sont chiffrées, déchiffrez-les d'abord.
  3. Restaurez la base avec pg_restore et les options --clean --if-exists, dans le conteneur webbase-postgres.
  4. Restaurez le volume de données à partir de son archive : son contenu actuel est remplacé.
  5. Redémarrez l'ensemble, puis vérifiez que /health répond Healthy.

Une base restaurée sur une autre installation (par exemple une production copiée en recette) peut faire apparaßtre une identité en conflit sur la page Licences : choisissez alors entre nouvelle instance et instance déplacée (voir « Gérer les licences de l'instance »).

Mettre Ă  jour la version

  1. Sauvegardez : une mise à jour ne prévoit aucun retour arriÚre automatique.
  2. Chargez la nouvelle image (docker load pour un fichier) ou indiquez sa version dans WEBBASE_IMAGE, dans .env.
  3. Avec un registre, tirez la nouvelle image : docker compose -f docker-compose.onprem-client.yml pull.
  4. Redémarrez : docker compose -f docker-compose.onprem-client.yml up -d. Les données sont conservées.

Au dĂ©marrage, chaque module applique lui-mĂȘme ses migrations de base de donnĂ©es. ContrĂŽlez ensuite :

  • l'Ă©cran État de l'instance, qui affiche la nouvelle version, et l'Ă©cran Diagnostic support, qui doit indiquer À jour pour chaque module (voir « Surveiller l'instance ») ;
  • le Journal des versions, qui liste les Ă©volutions de la version installĂ©e ;
  • la documentation livrĂ©e avec la version, Ă  importer de nouveau (voir « Mettre Ă  jour la documentation »).

Lisez les notes de la version avant de mettre à jour : certaines demandent une étape de plus, par exemple recopier un nouveau fichier d'orchestration.

Une vue personnalisée doit se trouver dans views-override/ : c'est le seul emplacement conservé d'une version à l'autre.

Si la mise à jour échoue

Si une migration échoue, l'application ne démarre pas et la base peut rester dans un état intermédiaire. Pour revenir à la version précédente :

  1. restaurez la sauvegarde faite juste avant la mise Ă  jour (voir plus haut) ;
  2. remettez l'ancienne version dans WEBBASE_IMAGE ;
  3. redémarrez.

Remettre seulement l'ancienne image ne suffit pas quand la nouvelle version a déjà migré la base : les migrations appliquées ne sont pas annulées. L'ancienne image reste disponible sur le serveur tant qu'elle n'a pas été supprimée.

Changer de version de PostgreSQL

Une nouvelle version majeure de PostgreSQL ne relit pas les fichiers de données de la précédente : changer seulement l'image de la base ne fonctionne pas. Il faut un dump complet, une base neuve dans la nouvelle version, puis la restauration du dump. Gardez une image qui contient l'extension pgvector, utilisée par la base de connaissances : sans elle, la restauration échoue.

Voir aussi

  • « Installer l'application sur ses serveurs ».
  • « Surveiller l'instance » : version, Ă©tat de la base, modules et migrations.
  • « Changer la connexion Ă  la base de donnĂ©es ».
Applies from version 1.0 Verified for version 1.0

Was this article helpful?

Still need help? Create a request