HomeLabDocs/radarr_complete.md

3.9 KiB

🎬 Radarr - Container 105

Overview

Radarr automates the discovery, downloading, renaming, and management of movie files. In this homelab, Radarr runs natively inside an unprivileged LXC container on Proxmox (not Docker), and integrates with qBittorrent and Jackett. Plex is notified via webhook after successful imports.

Service Details

  • Container ID: 105
  • Hostname: radarr
  • IP Address: 192.168.1.43
  • Port: 7878 (Web UI)
  • Access: LAN-only via Tailscale (not publicly exposed)
  • Authentication: Enabled (Forms login)
  • Username / Password: admin / pcideas (stored in Bitwarden under homelab > Radarr)

Hosting & Platform

  • Platform: Native install in Debian-based LXC
  • Privileged: No
  • Features: keyctl=1, nesting=1
  • Service: systemd-managed (radarr.service)
  • Binary Path: /opt/Radarr/Radarr
  • Config Directory: /var/lib/radarr
  • Runs As: root (inside unprivileged LXC)

Storage & Mounts

Host Path Container Path Purpose
/mnt/ssd_downloads /downloads Source of completed downloads
/mnt/smb_shares/g_media /mnt/g_media Movie media root folder
/mnt/smb_shares/h_media /mnt/h_media Movie media root folder
/mnt/smb_shares/i_media /mnt/i_media Movie media root folder
/mnt/smb_shares/j_media /mnt/j_media Movie media root folder
/mnt/smb_shares/k_media /mnt/k_media Movie media root folder
/mnt/smb_shares/f_media /mnt/f_media Movie media root folder

Configuration

  • Indexer: Jackett (Torznab URL)
  • Download Client: qBittorrent at 192.168.1.47:8080
    • Username / Password: admin / pcideas
    • Remote Path Mapping: /mnt/ssd_downloads (host) → /downloads (Radarr)
    • Share Limit Action: Pause (ensures import + cleanup works)

Import Behavior

  • Completed Download Handling: Enabled
  • Import Method: Move + Rename
  • Category Use: Optional (movies) in qBittorrent
  • Hardlinking: Disabled
  • Radarr auto-selects the correct root folder based on configured libraries

Config Files

  • Primary Config: /var/lib/radarr/config.xml
  • Stores:
    • Web UI port (7878)
    • Bind address (*)
    • SSL settings (disabled)
    • Authentication method (Forms)
    • API key
  • Web UI Behavior:
    • LaunchBrowser: false
    • UrlBase: empty
    • Branch: master

Backup & Recovery

  • Backup Target: /var/lib/radarr
  • Strategy: Scheduled LXC container snapshots + optional tarball or rsync
  • Manual Backup Command:
    tar -czvf /root/radarr-config-backup-$(date +%F).tar.gz /var/lib/radarr
    
  • Restore: Extract and restart the Radarr service

Logs & Monitoring

  • Log Path: /var/lib/radarr/logs/
  • Monitoring: Not currently configured

Updates

To update manually:

systemctl stop radarr
curl -Lo /tmp/radarr.tar.gz https://services.radarr.video/v1/download/main/latest?os=linux&arch=x64
tar -xvzf /tmp/radarr.tar.gz -C /tmp/radarr-update
cp -r /tmp/radarr-update/* /opt/Radarr/
chown -R root:root /opt/Radarr
systemctl start radarr

Systemd Service File

/etc/systemd/system/radarr.service

[Unit]
Description=Radarr Daemon
After=syslog.target network.target

[Service]
Type=simple
ExecStart=/opt/Radarr/Radarr -nobrowser -data=/var/lib/radarr/
TimeoutStopSec=20
KillMode=process
Restart=on-failure

[Install]
WantedBy=multi-user.target

Notes

  • Hardlinking is disabled
  • All media mounts are SMB-backed ZFS datasets
  • Remote path mapping is required due to separate qBittorrent container
  • Integration with Plex is via webhook
  • Config and logs are stored in /var/lib/radarr
  • Radarr runs as root which simplifies file access across mounts