All templates

Recyclarr

v1.0.0

Scheduled synchronization of Sonarr and Radarr quality definitions.

x-arcane:
  icon: https://cdn.jsdelivr.net/gh/selfhst/icons@main/svg/recyclarr.svg
  urls:
    - https://recyclarr.dev/guide/installation/docker/

services:
  recyclarr:
    image: ghcr.io/recyclarr/recyclarr:8
    restart: unless-stopped
    user: "${PUID:-1000}:${PGID:-1000}"
    environment:
      TZ: ${TZ:-Etc/UTC}
      CRON_SCHEDULE: ${CRON_SCHEDULE:-@daily}
    volumes:
      - ${BASE_PATH}/config:/config
    configs:
      - source: recyclarr-config
        target: /config/recyclarr.yml
    labels:
      com.getarcaneapp.arcane.icon: https://cdn.jsdelivr.net/gh/selfhst/icons@main/svg/recyclarr.svg

configs:
  recyclarr-config:
    content: |
      sonarr:
        series:
          base_url: ${SONARR_URL:?Set SONARR_URL}
          api_key: ${SONARR_API_KEY:?Set SONARR_API_KEY}
          quality_definition:
            type: series
      radarr:
        movies:
          base_url: ${RADARR_URL:?Set RADARR_URL}
          api_key: ${RADARR_API_KEY:?Set RADARR_API_KEY}
          quality_definition:
            type: movie

README

Scheduled synchronization of Sonarr and Radarr quality definitions.

Deployment

Copy .env.example to .env (or enter its values in Arcane), set paths and credentials, and deploy compose.yaml. This service has no published web port. Use reachable hostnames or host IPs for services in other Compose projects; localhost inside a container refers to that container.

Set reachable SONARR_URL, RADARR_URL, and their API keys before deployment. The inline Compose config provides series/movie quality-size definitions without requiring a separate config file. Compose 2.23.1 or newer is required for configs.content. Create ${BASE_PATH}/config writable by PUID:PGID. Back up Arr settings, then run docker compose run --rm recyclarr sync --preview to inspect changes. The running service synchronizes daily (configurable with CRON_SCHEDULE). This changes quality definitions; it creates no deletion rules. Edit the inline config to add desired profiles and custom formats. Credentials live in .env and must be protected.

Upstream documentation