Scripts Backup
Scripts automatiques backup configurations (host, Docker, documentation).
Vue d'Ensemble
| Script | Path | Contenu | Cron |
|---|---|---|---|
| backup-proxmox-host.sh | /usr/local/bin/ (host) |
Configs host Proxmox | 05:00 |
| backup-docker-configs.sh | /usr/local/bin/ (LXC 102) |
docker-compose LXC 100/101/103 | 05:00 |
| backup-documentation.sh | /usr/local/bin/ (LXC 102) |
Documentation MkDocs | 05:00 |
| backup-docker-configs.sh | /root/ (LXC 103) |
NPM/Authelia/WireGuard (quotidien) | 04:00 |
Architecture centralisée : LXC 102 gère tous les backups Docker vers Google Drive. LXC 103 maintient un backup local quotidien qui est intégré par LXC 102.
Backup Host Proxmox
Script : /usr/local/bin/backup-proxmox-host.sh
Contenu sauvegardé :
/etc/pve/- Configs Proxmox VE/etc/network/- Configuration réseau/etc/ssh/+/root/.ssh/- SSH/etc/fstab- Montages disques/etc/snapraid.conf- SnapRAID/etc/cron.*- Tâches planifiées/usr/local/bin/- Scripts custom
Destination : gdrive:backup/homeserver/configs/
Format : proxmox-host-config-YYYYMMDD-HHMMSS.tar.gz
Backup Docker Configs (LXC 100/101/103)
Script : /usr/local/bin/backup-docker-configs.sh (dans LXC 102)
Contenu sauvegardé :
/mnt/lxc-data/docker-100/docker-compose.yml/mnt/lxc-data/docker-101/docker-compose.yaml/mnt/lxc-data/docker-100/{prowlarr,radarr,sonarr,sabnzbd}/config.xml/mnt/lxc-data/docker-101/homepage/*.yaml/mnt/lxc-data/backups/lxc103-docker/*.tar.gz- Backups LXC 103
Destination : gdrive:backup/homeserver/docker-configs/
Format : docker-configs-YYYYMMDD-HHMMSS.tar.gz
Architecture :
- LXC 103 crée backup local quotidien (04:00) →
/mnt/lxc-data/backups/lxc103-docker/ - LXC 102 intègre ces backups (05:00) → Google Drive
- Centralisation via rclone installé uniquement sur LXC 102
Backup Documentation
Script : /usr/local/bin/backup-documentation.sh (dans LXC 102)
Contenu sauvegardé :
/mnt/lxc-data/documentation/(complet)
Destination : gdrive:backup/homeserver/documentation/
Format : documentation-YYYYMMDD-HHMMSS.tar.gz
Cron Configuration
Host Proxmox
LXC 102
# Vérifier
pct exec 102 -- crontab -l
# Lignes actives
0 5 * * * /usr/local/bin/backup-docker-configs.sh
0 5 * * * /usr/local/bin/backup-documentation.sh
LXC 103
# Vérifier
pct exec 103 -- crontab -l
# Ligne active
0 4 * * * /root/backup-docker-configs.sh >> /var/log/backup-docker.log 2>&1
Note : LXC 103 exécute backup local à 04:00, LXC 102 le récupère à 05:00.
Logs
# Host
tail -f /var/log/backup-proxmox-host.log
# LXC 102
pct exec 102 -- tail -f /var/log/backup-docker-configs.log
pct exec 102 -- tail -f /var/log/backup-documentation.log
# LXC 103
pct exec 103 -- tail -f /var/log/backup-docker.log
Rétention
- Host + LXC 102 : 30 jours Google Drive (cleanup rclone)
- LXC 103 : 30 jours local (cleanup dans script)
Vérification
Voir monitoring.md.