Commit Graph

4 Commits

Author SHA1 Message Date
bed2106cfd fix: update Backrest config version to 4 for compatibility
Changed config version from 1 to 4 to match Backrest 1.10.1
requirements. Version 1 is too old and requires migration through
intermediate version 1.4.0.

Config now loads successfully with all 11 backup plans scheduled.
2025-11-06 10:34:09 +01:00
35ddcb2752 feat: add automated backup configuration for all volumes
Added comprehensive backup configuration to Backrest:

**Repository Configuration:**
- Target: /repos (mounted from /mnt/hidrive/users/valknar/Backup)
- Password: falcon-backup-2025
- Auto-initialize and auto-unlock enabled
- Weekly prune schedule (Sundays at 2 AM)
- Weekly integrity checks (Sundays at 3 AM)

**Backup Plans** (11 plans covering all volumes):
1. **postgres-backup** (2 AM daily)
   - PostgreSQL database
   - Retention: 7 daily, 4 weekly, 6 monthly, 2 yearly

2. **redis-backup** (3 AM daily)
   - Redis cache data
   - Retention: 7 daily, 4 weekly, 3 monthly

3. **directus-uploads-backup** (4 AM daily)
   - Directus media files
   - Retention: 7 daily, 4 weekly, 6 monthly, 2 yearly

4. **directus-bundle-backup** (4 AM daily)
   - Directus extensions
   - Retention: 7 daily, 4 weekly, 3 monthly

5. **awesome-backup** (5 AM daily)
   - Awesome app database
   - Retention: 7 daily, 4 weekly, 6 monthly

6. **gotify-backup** (5 AM daily)
   - Gotify notifications
   - Retention: 7 daily, 4 weekly, 3 monthly

7. **scrapy-backup** (6 AM daily)
   - Scrapyd data and spider code
   - Retention: 7 daily, 4 weekly, 3 monthly

8. **n8n-backup** (6 AM daily)
   - n8n workflow data
   - Retention: 7 daily, 4 weekly, 6 monthly

9. **filestash-backup** (7 AM daily)
   - Filestash state
   - Retention: 7 daily, 4 weekly, 3 monthly

10. **linkwarden-backup** (7 AM daily)
    - Linkwarden bookmarks and search index
    - Retention: 7 daily, 4 weekly, 6 monthly

11. **letsencrypt-backup** (8 AM daily)
    - SSL certificates
    - Retention: 7 daily, 4 weekly, 12 monthly, 3 yearly

**Configuration Mount:**
- config.json mounted directly at /config/config.json
- Read-write mode to allow UI updates
- Removed backrest_config volume (using file mount instead)

All backups scheduled at different times to spread I/O load.
Critical data (postgres, directus, letsencrypt) has longer retention.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-06 10:26:04 +01:00
acf6385aca fix: resolve volume name conflicts in restic stack
Prefixed all external volume references with 'backup_' to avoid
conflicts with volume definitions in other compose files (e.g.,
directus_uploads defined in both sexy and restic).

This allows Docker Compose's include pattern to work correctly
without volume name collisions.
2025-11-06 10:16:52 +01:00
c89769a23f feat: add Restic backup stack with Backrest UI
Added comprehensive backup solution to The Falcon infrastructure:

- **Restic Stack** (restic.pivoine.art):
  - Backrest web UI for managing restic backups
  - Automated scheduled backups with retention policies
  - Real-time backup status and monitoring
  - Restore capabilities via web interface

- **Backup Configuration**:
  - Target: /mnt/hidrive/users/valknar/Backup
  - Backs up all critical Docker volumes read-only:
    - PostgreSQL, Redis, Directus (uploads/bundle)
    - Awesome, Gotify, Scrapy (data/code)
    - n8n workflows, Filestash state
    - Linkwarden bookmarks/search index
    - Let's Encrypt SSL certificates

- **Infrastructure Updates**:
  - Added RESTIC_* environment variables to arty.yml
  - Updated compose.yaml to include restic stack
  - Updated README.md and CLAUDE.md documentation
  - Configured Traefik routing with SSL

All volumes mounted read-only to backup container for safety.
Backrest data persisted across: data, config, cache, tmp volumes.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-06 10:13:07 +01:00