Les éléments à sauvegarder sont les suivants :
- Les données dans Elastic Search
- La technique recommandée repose sur les snapshots
- Les fichiers uploadés dans le dossier d'upload
- Voir l'option de configuration
uploadPath
- Voir l'option de configuration
- Éventuellement le site généré pour une restauration plus rapide
- Voir l'option de configuration
publicPath
- Voir l'option de configuration
Note : à la date actuelle, Redis ne contient que des informations volatiles (les sessions utilisateur du backoffice) et sa sauvegarde a un faible intérêt.
Plutôt qu'une sauvegarde par serveur, on peut également simplement sauvegarder directement les systèmes de fichier des images Docker :
- Les données sont dans un volume Docker (voir le nom du volume dans le fichier
docker-compose.{dev,prod}.yml
) - Sauvegarde du volume : utiliser
docker volume inspect <nom du volume>
pour récupérer le "mountpoint", c'est le dossier à sauvegarder- Exemple en une commande avec
tar
etjq
:sudo tar zcvf backup.tgz $(docker volume inspect eatlas_esdata_dev | jq -r '.[0].Mountpoint')
- Exemple en une commande avec
- Restaurer les indices Elastic Search
- Par exemple en ayant utilisé les snapshots
- Restaurer les fichiers uploadés et éventuellement le site généré
Normalement il n'est pas nécessaire de redémarrer le serveur Node.