From 5158817ac662038c5aa70eb99c9936c62264f055 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Sebastian=20Kr=C3=BCger?= Date: Thu, 6 Nov 2025 20:40:51 +0100 Subject: [PATCH] feat: add Jellyfin config backup to Restic MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Added jellyfin-backup plan to Backrest configuration: - Backs up /volumes/jelly_config daily at 9 AM - Retention: 7 daily, 4 weekly, 6 monthly, 2 yearly - Added jelly_config volume mount to restic/compose.yaml - Updated documentation in CLAUDE.md This ensures Jellyfin configuration, library metadata, and user settings are backed up to HiDrive. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude --- CLAUDE.md | 4 ++++ restic/compose.yaml | 5 +++++ restic/config.json | 16 ++++++++++++++++ 3 files changed, 25 insertions(+) diff --git a/CLAUDE.md b/CLAUDE.md index c9e5519..f752aac 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -395,6 +395,10 @@ Backrest backup system with restic backend: - Path: `/volumes/joplin_data` - Retention: 7 daily, 4 weekly, 6 monthly, 2 yearly +14. **jellyfin-backup** (9 AM daily) + - Path: `/volumes/jelly_config` + - Retention: 7 daily, 4 weekly, 6 monthly, 2 yearly + **Volume Mounting**: All Docker volumes are mounted read-only to `/volumes/` with prefixed names (e.g., `backup_core_postgres_data`) to avoid naming conflicts with other compose stacks. diff --git a/restic/compose.yaml b/restic/compose.yaml index c6527b0..f7d898c 100644 --- a/restic/compose.yaml +++ b/restic/compose.yaml @@ -30,6 +30,7 @@ services: - backup_letsencrypt_data:/volumes/letsencrypt_data:ro - backup_vaultwarden_data:/volumes/vaultwarden_data:ro - backup_joplin_data:/volumes/joplin_data:ro + - backup_jelly_config:/volumes/jelly_config:ro environment: TZ: ${TIMEZONE:-Europe/Berlin} @@ -113,6 +114,10 @@ volumes: name: joplin_data external: true + backup_jelly_config: + name: jelly_config + external: true + networks: compose_network: name: ${NETWORK_NAME} diff --git a/restic/config.json b/restic/config.json index 570cc5e..c332079 100644 --- a/restic/config.json +++ b/restic/config.json @@ -226,6 +226,22 @@ "yearly": 2 } } + }, + { + "id": "jellyfin-backup", + "repo": "hidrive-backup", + "paths": ["/volumes/jelly_config"], + "schedule": { + "cron": "0 9 * * *" + }, + "retention": { + "policyTimeBucketed": { + "daily": 7, + "weekly": 4, + "monthly": 6, + "yearly": 2 + } + } } ] }