Configuration
Le fichier backup_data.json recense les informations sur les différents services mis en place sur la machine et les informations nécessaires pour lancer les rotations sur ces services.
Structure
- Nom du service : Contient une structure de données contenant les informations relatives au service telles qu'indiquées ci-dessous
- "Host" : Indique l'hôte de la base de données
- "Port" : Indique le port pour se connecter au service
- "Database" : Indique le nom de la base de données
- "Folder" : Indique le nom du dossier de backup utilisé par le script de backup et de rotation
- "Cron" : Indique la fréquence de temps à laquelle les backups sont effectués par le script de rotation au format cron
- "Backup-rota" : Contient les paramètres pour la rotation des backups dans une structure de données comme indiqué ci-dessous
-
"Hour" : nombre de backups horaires à conserver
-
"Day" : nombre de backups quotidiens à conserver
-
"Week" : nombre de backups hebdomadaires à conserver
-
"Month": nombre de backups mensuels à conserver
-
Exemple
{
"wekan":
{
"Host": "wekan-db",
"Port": "27017",
"Database": "wekan",
"Type": "mongo",
"Folder": "wekan",
"Cron" : "0 * * * *",
"Init-Backup" : "0",
"Backup-rota":
{
"Hour" : 24,
"Day" : 7,
"Week" : 4,
"Month" : 12
}
},
"etherpad":
{
"Host": "etherpad-db",
"Port": "3306",
"User": "root",
"Password": "lolilolilol",
"Database": "--all-databases",
"Type": "mysql",
"Folder": "etherpad",
"Cron" : "0 * * * *",
"Options" : "--single-transaction",
"Init-Backup" : "0",
"Backup-rota":
{
"Hour" : 24,
"Day" : 7,
"Week" : 4,
"Month" : 12
}
}
}
##Exemple d'implémentation dans le docker-compose
##############################
####### Backup rotation ######
##############################
pica-backup-rotation:
image: backup-rotation
container_name: pica-backup-rotation
volumes:
- /DATA/BACKUP/:/backup
- /DATA/CONFIG:/config
- /DATA/BACKUP : Dossier contenant les backups à effecter
- /DATA/CONFIG : Dossier contenant le fichier .json de données