Rclone File-Based Backup Guide
Overview
The Rclone backup system provides simple, file-based backups using tar archives for full backups and rclone sync for incremental backups.
Backup Types
Full Backup (TAR Archive)
- Schedule: Daily at 2:00 AM
- Method: Creates compressed
.tar.gzarchive - Location:
onedrive-donnyaw:16.Docker-Backup/Docusaurus/Full-Backup-Rclone/ - Script:
/home/rezriz/github/01-production/vps-management/backup-scripts/docusaurus-rclone/docusaurus-full-backup.sh
Incremental Backup (File Sync)
- Schedule: Daily at 3:00 AM
- Method: Syncs files to
Currentfolder, archives changes - Location:
onedrive-donnyaw:16.Docker-Backup/Docusaurus/Incremental-Rclone/ - Script:
/home/rezriz/github/01-production/vps-management/backup-scripts/docusaurus-rclone/docusaurus-incremental-backup.sh
Configuration
Source Directory
SOURCE_DIR="/opt/docker-data/apps/docusaurus/site"
Backed Up Content
The full backup includes:
blog/- Blog postsdocs/- Documentation filessrc/- Source code and componentsstatic/- Static assets (images, videos)package.json- Dependenciespackage-lock.json- Locked dependenciesdocusaurus.config.js- Main configurationsidebars.js- Sidebar configuration
Manual Backup
Run Full Backup
/home/rezriz/github/01-production/vps-management/backup-scripts/docusaurus-rclone/docusaurus-full-backup.sh
Run Incremental Backup
/home/rezriz/github/01-production/vps-management/backup-scripts/docusaurus-rclone/docusaurus-incremental-backup.sh
Restore from Full Backup
1. List Available Backups
rclone ls onedrive-donnyaw:16.Docker-Backup/Docusaurus/Full-Backup-Rclone/
2. Download Backup Archive
# Download latest backup
rclone copy onedrive-donnyaw:16.Docker-Backup/Docusaurus/Full-Backup-Rclone/docusaurus_full_YYYY-MM-DD_HH-MM-SS.tar.gz /tmp/
3. Extract Archive
# Create temporary extraction directory
mkdir -p /tmp/docusaurus-restore
# Extract the archive
cd /tmp/docusaurus-restore
tar -xzf /tmp/docusaurus_full_YYYY-MM-DD_HH-MM-SS.tar.gz
4. Restore to Live Server
# Stop the Docusaurus container (if running)
cd /opt/docker-data/apps/docusaurus
docker-compose down
# Backup current site (safety measure)
mv site site.backup.$(date +%Y%m%d_%H%M%S)
# Create new site directory
mkdir -p site
# Copy restored files
cp -r /tmp/docusaurus-restore/* /opt/docker-data/apps/docusaurus/site/
# Set correct permissions
chown -R rezriz:rezriz /opt/docker-data/apps/docusaurus/site
# Restart container
docker-compose up -d
# Verify site is working
docker-compose logs -f
Restore from Incremental Backup
1. List Current Backup
rclone lsd onedrive-donnyaw:16.Docker-Backup/Docusaurus/Incremental-Rclone/Current/
2. Download Current State
# Download entire current state
rclone sync onedrive-donnyaw:16.Docker-Backup/Docusaurus/Incremental-Rclone/Current/ /tmp/docusaurus-restore/ --progress
3. Restore to Live Server
# Stop container
cd /opt/docker-data/apps/docusaurus
docker-compose down
# Backup current site
mv site site.backup.$(date +%Y%m%d_%H%M%S)
# Restore from backup
mkdir -p site
cp -r /tmp/docusaurus-restore/* site/
# Set permissions
chown -R rezriz:rezriz site/
# Restart
docker-compose up -d
Restore Specific Files from Archive
Browse Archive History
# List archived versions
rclone lsd onedrive-donnyaw:16.Docker-Backup/Docusaurus/Incremental-Rclone/Archive/
Download Specific Version
# Download specific date's archive
rclone sync onedrive-donnyaw:16.Docker-Backup/Docusaurus/Incremental-Rclone/Archive/YYYY-MM-DD_HH-MM-SS/ /tmp/restore-archive/
Logs
View backup logs:
# Full backup log
tail -f /tmp/docusaurus-full.log
# Incremental backup log
tail -f /tmp/docusaurus-incremental.log
Troubleshooting
Backup Failed
- Check rclone configuration:
rclone listremotes - Verify OneDrive connection:
rclone lsd onedrive-donnyaw: - Check disk space:
df -h - Review logs in
/tmp/docusaurus-*.log
Restore Failed
- Verify archive integrity:
tar -tzf backup.tar.gz - Check permissions:
ls -la /opt/docker-data/apps/docusaurus/ - Ensure Docker is stopped before restore
- Check available disk space
Best Practices
- Test Restores Regularly - Verify backups can be restored
- Monitor Logs - Check cron logs for failures
- Verify OneDrive Space - Ensure sufficient cloud storage
- Keep Multiple Versions - Don't delete old backups immediately
- Document Changes - Note when making configuration changes