/
/
/
Ansible role that provisions my storage server.
1# Storage
2
3Media automation stack: Jellyfin, Arr suite, download clients, Calibre, Music Assistant, and restic backup server.
4
5## Key Parameters
6
7| Variable | Default | Description |
8|----------|---------|-------------|
9| `storage_jellyfin_enabled` | `true` | Jellyfin media server |
10| `storage_sonarr_enabled` | `true` | Sonarr (TV shows) |
11| `storage_radarr_enabled` | `true` | Radarr (movies) |
12| `storage_prowlarr_enabled` | `true` | Prowlarr (indexer manager) |
13| `storage_lazylibrarian_enabled` | `true` | LazyLibrarian (books) |
14| `storage_lidarr_enabled` | `true` | Lidarr (music) |
15| `storage_jellyseer_enabled` | `true` | Jellyseer (media requests) |
16| `storage_calibre_enabled` | `true` | Calibre server + web interface |
17| `storage_gluetun_enabled` | `true` | VPN gateway for Arr stack |
18| `music_assistant_enabled` | `true` | Music Assistant server (host network) |
19| `storage_restic_backup_server_enabled` | `true` | Restic REST backup server |
20| `jellyfin_hardware_acceleration` | `vaapi` | GPU transcoding: `vaapi`, `nvidia`, `qsv` |
21| `vault_gluetun_*` | (vault) | VPN provider credentials |
22
23## Workflow
24
251. Validate vault credentials are available
262. Create Docker directories and media library structure
273. Deploy Jellyfin with hardware transcoding (if enabled)
284. Deploy Arr stack behind Gluetun VPN (Sonarr, Radarr, Prowlarr, Bazarr, Lidarr)
295. Deploy download clients (qBittorrent, Flaresolverr)
306. Deploy Music Assistant server (if enabled)
317. Deploy Calibre server and web interface (if enabled)
328. Deploy restic REST backup server (if enabled)
33