{ "kind": "compose", "metadata": { "name": "ARR-stack", "description": "Media-automatisering met een schakelaar per onderdeel: Sonarr, Radarr, Lidarr, Readarr, Whisparr, Prowlarr, Jackett, Bazarr, FlareSolverr, qBittorrent, SABnzbd, NZBGet, Gluetun (VPN), Jellyseerr, Recyclarr, Unpackerr, Tdarr, Autobrr, Maintainerr en Huntarr.", "tags": [ "media", "automatisering", "films", "series", "downloaden" ], "icon": { "provider": "selfhst", "id": "sonarr" }, "version": { "name": "latest" } }, "variables": [ { "title": "Algemeen", "items": [ { "name": "service_name", "type": "str", "title": "Naam van de stack", "default": "arr", "required": true, "description": "Wordt het voorvoegsel van elke container, bv. arr-sonarr" }, { "name": "data_dir", "type": "str", "title": "Configuratiemap", "default": "/opt/serverup/appdata", "required": true }, { "name": "media_dir", "type": "str", "title": "Mediamap", "default": "/mnt/media", "required": true, "description": "Hier komen films/, series/, muziek/ en boeken/ onder te staan" }, { "name": "downloads_dir", "type": "str", "title": "Downloadmap", "default": "/mnt/downloads", "required": true, "description": "Zet deze op hetzelfde bestandssysteem als de mediamap, anders kopieert elke download in plaats van te verplaatsen", "help": "Zet deze map op hetzelfde bestandssysteem als je mediamap. Staan ze op verschillende schijven of volumes, dan kopieert elke voltooide download in plaats van te verplaatsen: traag, en je hebt alles tijdelijk dubbel." }, { "name": "timezone", "type": "str", "title": "Tijdzone", "default": "Europe/Amsterdam", "required": true }, { "name": "puid", "type": "int", "title": "Gebruikers-ID (PUID)", "default": 1000, "required": true, "description": "`id -u` op je host; bepaalt de eigenaar van bestanden", "help": "Het gebruikersnummer waaronder de containers draaien. Klopt dit niet met de eigenaar van je mediamap, dan kunnen de apps er niet in schrijven. Vind het met `id -u` op je server." }, { "name": "pgid", "type": "int", "title": "Groeps-ID (PGID)", "default": 1000, "required": true } ] }, { "title": "Sonarr — series", "items": [ { "name": "port_sonarr", "type": "int", "title": "Poort", "default": 8989, "required": true } ], "toggle": "enable_sonarr", "toggle_default": true, "description": "Zoekt, downloadt en hernoemt series" }, { "title": "Radarr — films", "items": [ { "name": "port_radarr", "type": "int", "title": "Poort", "default": 7878, "required": true } ], "toggle": "enable_radarr", "toggle_default": true, "description": "Zoekt, downloadt en hernoemt films" }, { "title": "Lidarr — muziek", "items": [ { "name": "port_lidarr", "type": "int", "title": "Poort", "default": 8686, "required": true } ], "toggle": "enable_lidarr", "toggle_default": false }, { "title": "Readarr — boeken", "items": [ { "name": "port_readarr", "type": "int", "title": "Poort", "default": 8787, "required": true } ], "toggle": "enable_readarr", "toggle_default": false, "description": "Let op: de ontwikkeling van Readarr is stilgelegd; het draait nog wel" }, { "title": "Whisparr — volwassenen", "items": [ { "name": "port_whisparr", "type": "int", "title": "Poort", "default": 6969, "required": true } ], "toggle": "enable_whisparr", "toggle_default": false }, { "title": "Prowlarr — indexerbeheer", "items": [ { "name": "port_prowlarr", "type": "int", "title": "Poort", "default": 9696, "required": true } ], "toggle": "enable_prowlarr", "toggle_default": true, "description": "Beheert je indexers centraal en duwt ze naar de andere *arr-apps" }, { "title": "Jackett — indexerproxy", "items": [ { "name": "port_jackett", "type": "int", "title": "Poort", "default": 9117, "required": true } ], "toggle": "enable_jackett", "toggle_default": false, "description": "Ouder alternatief voor Prowlarr; meestal heb je er maar één nodig" }, { "title": "FlareSolverr — Cloudflare omzeilen", "items": [ { "name": "port_flaresolverr", "type": "int", "title": "Poort", "default": 8191, "required": true } ], "toggle": "enable_flaresolverr", "toggle_default": false, "description": "Nodig voor indexers die achter een Cloudflare-controle zitten" }, { "title": "Bazarr — ondertitels", "items": [ { "name": "port_bazarr", "type": "int", "title": "Poort", "default": 6767, "required": true } ], "toggle": "enable_bazarr", "toggle_default": true }, { "title": "qBittorrent — torrents", "items": [ { "name": "port_qbittorrent", "type": "int", "title": "Webinterface", "default": 8097, "required": true }, { "name": "port_qbittorrent_tcp", "type": "int", "title": "Inkomende poort", "default": 6881, "required": true } ], "toggle": "enable_qbittorrent", "toggle_default": true, "description": "Torrentclient met webinterface" }, { "title": "SABnzbd — usenet", "items": [ { "name": "port_sabnzbd", "type": "int", "title": "Poort", "default": 8098, "required": true } ], "toggle": "enable_sabnzbd", "toggle_default": false }, { "title": "NZBGet — usenet (lichter)", "items": [ { "name": "port_nzbget", "type": "int", "title": "Poort", "default": 6789, "required": true } ], "toggle": "enable_nzbget", "toggle_default": false, "description": "Zuiniger alternatief voor SABnzbd" }, { "title": "Gluetun — VPN voor de downloadclient", "items": [ { "name": "vpn_provider", "type": "str", "title": "VPN-aanbieder", "default": "mullvad", "required": true, "description": "Bijvoorbeeld mullvad, nordvpn, protonvpn of surfshark" }, { "name": "vpn_type", "type": "enum", "title": "Protocol", "default": "wireguard", "required": true, "config": { "options": [ "wireguard", "openvpn" ] } }, { "name": "wireguard_private_key", "type": "str", "title": "WireGuard privésleutel", "default": "", "required": false, "config": { "placeholder": "alleen bij wireguard" } }, { "name": "wireguard_addresses", "type": "str", "title": "WireGuard adressen", "default": "", "required": false, "config": { "placeholder": "10.64.0.2/32" } }, { "name": "openvpn_user", "type": "str", "title": "OpenVPN gebruiker", "default": "", "required": false }, { "name": "openvpn_password", "type": "str", "title": "OpenVPN wachtwoord", "default": "", "required": false } ], "toggle": "enable_gluetun", "toggle_default": false, "description": "Leidt al je downloadverkeer door een VPN. De downloadclients delen dan het netwerk van deze container, dus hun poorten komen hier te liggen." }, { "title": "Jellyseerr — verzoeken", "items": [ { "name": "port_jellyseerr", "type": "int", "title": "Poort", "default": 5055, "required": true } ], "toggle": "enable_jellyseerr", "toggle_default": true, "description": "Laat huisgenoten films en series aanvragen" }, { "title": "Recyclarr — TRaSH-instellingen", "items": [], "toggle": "enable_recyclarr", "toggle_default": false, "description": "Synchroniseert kwaliteitsprofielen uit de TRaSH-gidsen naar Sonarr en Radarr" }, { "title": "Unpackerr — archieven uitpakken", "items": [], "toggle": "enable_unpackerr", "toggle_default": false, "description": "Pakt gedownloade rar-archieven automatisch uit" }, { "title": "Tdarr — hercoderen", "items": [ { "name": "port_tdarr", "type": "int", "title": "Webinterface", "default": 8265, "required": true }, { "name": "port_tdarr_server", "type": "int", "title": "Serverpoort", "default": 8266, "required": true } ], "toggle": "enable_tdarr", "toggle_default": false, "description": "Zet je bibliotheek om naar een zuiniger formaat" }, { "title": "Autobrr — automatisch grijpen", "items": [ { "name": "port_autobrr", "type": "int", "title": "Poort", "default": 7474, "required": true } ], "toggle": "enable_autobrr", "toggle_default": false, "description": "Reageert direct op aankondigingen in plaats van periodiek te zoeken" }, { "title": "Maintainerr — opruimen", "items": [ { "name": "port_maintainerr", "type": "int", "title": "Poort", "default": 6246, "required": true } ], "toggle": "enable_maintainerr", "toggle_default": false, "description": "Ruimt media op volgens regels die je zelf instelt" }, { "title": "Huntarr — gaten opvullen", "items": [ { "name": "port_huntarr", "type": "int", "title": "Poort", "default": 9705, "required": true } ], "toggle": "enable_huntarr", "toggle_default": false, "description": "Zoekt gericht naar ontbrekende en te verbeteren afleveringen" } ] }