feat: add Jellyfin config backup to Restic
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 <noreply@anthropic.com>
This commit is contained in:
@@ -395,6 +395,10 @@ Backrest backup system with restic backend:
|
|||||||
- Path: `/volumes/joplin_data`
|
- Path: `/volumes/joplin_data`
|
||||||
- Retention: 7 daily, 4 weekly, 6 monthly, 2 yearly
|
- 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**:
|
**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.
|
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.
|
||||||
|
|
||||||
|
|||||||
@@ -30,6 +30,7 @@ services:
|
|||||||
- backup_letsencrypt_data:/volumes/letsencrypt_data:ro
|
- backup_letsencrypt_data:/volumes/letsencrypt_data:ro
|
||||||
- backup_vaultwarden_data:/volumes/vaultwarden_data:ro
|
- backup_vaultwarden_data:/volumes/vaultwarden_data:ro
|
||||||
- backup_joplin_data:/volumes/joplin_data:ro
|
- backup_joplin_data:/volumes/joplin_data:ro
|
||||||
|
- backup_jelly_config:/volumes/jelly_config:ro
|
||||||
|
|
||||||
environment:
|
environment:
|
||||||
TZ: ${TIMEZONE:-Europe/Berlin}
|
TZ: ${TIMEZONE:-Europe/Berlin}
|
||||||
@@ -113,6 +114,10 @@ volumes:
|
|||||||
name: joplin_data
|
name: joplin_data
|
||||||
external: true
|
external: true
|
||||||
|
|
||||||
|
backup_jelly_config:
|
||||||
|
name: jelly_config
|
||||||
|
external: true
|
||||||
|
|
||||||
networks:
|
networks:
|
||||||
compose_network:
|
compose_network:
|
||||||
name: ${NETWORK_NAME}
|
name: ${NETWORK_NAME}
|
||||||
|
|||||||
@@ -226,6 +226,22 @@
|
|||||||
"yearly": 2
|
"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
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user