Installer Borgmatic via Docker
- Se connecter à l'instance concernée :
ssh admin@<instance>-<region>-sinp
- Se placer dans le dossier ~/docker/borgomatic avec :
cd ~/docker/borgomatic
- Préparer la configuration de l'instance :
- Configurer l'environnement (dossier SSH de l'utilisateur, Borg passphrase…) :
cp ./.env.sample ./.env ; vi ./.env ; chmod 700 .env
- Configurer les alias d'email utilisés par Msmtp :
cp ./config/aliases.sample.txt ./config/aliases.txt ; vi ./config/aliases.txt
- Configurer Borgomatic (dossiers/bases Postgresql à sauvegarder, dépôts où réaliser les sauvegardes…) :
cp ./config/borgmatic.sample.yml ./config/borgmatic.yml ; chmod 700 ./config/borgmatic.yml ; vi ./config/borgmatic.yml
- Pensez à sécuriser les éventuels scipts/fichiers de config utilisé dans la section hooks avec :
chmod 700 <mon-fichier-de-config>
- Configurer les notifications utilisant Ntfy :
cp ./config/ntfy.sample.yml ./config/ntfy.yml ; vi ./config/ntfy.yml
- Pour le premier lancement du container, afin d'afficher directement dans la console les logs, vous pouvez :
- Le lancer sans l'option
-d
avec :docker-compose up
- Une fois que tout fonctionne, vous pouvez l’arrêter :
CTRL+C
- Puis le lancer en tant que service :
docker-compose up -d
- Ensuite, consulter les log dans Portainer sur le site
https://manager.<domaine-sinp>
- Préparer la connexion SSH de l'utilisateur admin afin qu'il puisse se connecter à distance sur l'instance bkp-srv
- Corriger les éventuels problèmes de configuration de Borgmatic s'affichant dans les logs en complétant l'installation de Borg.
Notes sur la configuration de Borgmatic
- Ne pas inclure le chemin
/mnt/source/root/.borgmatic/
dans le paramètreexclude_patterns
car c'est l'emplacement où sont sauvegardés les bases de données. - Ne pas utiliser le format
directory
au niveau de la sauvegarde des bases de données Postgresql. Il ne semble pas fonctionné car les archives sont toujours incomplètes. L'utilisation des options--compress 9 --jobs=2
semble aussi poser problème.