Skip to main content

Docker Installation

This guide will walk you through setting up Configarr using Docker.

Quick Start​

The fastest way to get started is using the official Docker image:

shell
docker run -d \
--name=configarr \
-v /path/to/config:/config \
ghcr.io/raydak-labs/configarr:latest

For a more maintainable setup, we recommend using Docker Compose:

compose.yml
#version: "3.8"
services:
configarr:
image: ghcr.io/raydak-labs/configarr:latest
container_name: configarr
user: 1000:1000 # Optional, defaults to root:root
environment:
- TZ=Etc/UTC
volumes:
- ./config:/app/config # Contains the config.yml and secrets.yml
- ./dockerrepos:/app/repos # Cache repositories
- ./custom/cfs:/app/cfs # Optional if custom formats locally provided
- ./custom/templates:/app/templates # Optional if custom templates
restart: unless-stopped

Save this as docker-compose.yml and run:

shell
docker-compose run --rm configarr

Configuration​

Volume Mappings​

VolumeDescription
/configContains all configuration files and data

Environment Variables​

VariableDescriptionDefault
TZTimezoneEtc/UTC
LOG_LEVELLog levelinfo

Basic Configuration​

  1. Create a configuration file at /path/to/config/config.yaml more information about the config file can be found here:
config.yml (with examples and comments)
#trashGuideUrl: https://github.com/BlackDark/fork-TRASH-Guides
#recyclarrConfigUrl: https://github.com/BlackDark/fork-recyclarr-configs
localCustomFormatsPath: /app/cfs
localConfigTemplatesPath: /app/templates

customFormatDefinitions:
- trash_id: example-in-config-cf
trash_scores:
default: -10000
trash_description: "Language: German Only"
name: "Language: Not German"
includeCustomFormatWhenRenaming: false
specifications:
- name: Not German Language
implementation: LanguageSpecification
negate: true
required: false
fields:
value: 4

sonarr:
instance1:
# Set the URL/API Key to your actual instance
base_url: http://sonarr:8989
#base_url: https://sonarr.oci.eduard-marbach.de/
api_key: !secret SONARR_API_KEY

quality_definition:
type: series

include:
#### Custom
- template: sonarr-cf # template name
- template: sonarr-quality

custom_formats:
# Movie Versions
- trash_ids:
- 9f6cbff8cfe4ebbc1bde14c7b7bec0de # IMAX Enhanced
quality_profiles:
- name: ExampleProfile
# score: 0 # Uncomment this line to disable prioritised IMAX Enhanced releases

radarr: {} # no radarr instance

Updating​

To update to the latest version:

shell
docker-compose pull
docker-compose up -d

Troubleshooting​

Running the container will output logs to the console. With those you can see what is happening and if there are any issues. Increase the log level with the LOG_LEVEL environment variable to get more detailed logs.

Common Issues​

  1. Permission Issues

    • Ensure user matches your required user
    • Check folder permissions on the config directory
    • after changing the user, adjust the user in the git repos (trash guide, recyclarr) to match
  2. Connection Issues

    • Verify Sonarr/Radarr URLs are accessible from the container
    • Confirm API keys are correct
    • Check network connectivity between containers if using Docker networks
  3. Configuration Issues

    • Validate your YAML syntax
    • Ensure all required fields are present in config.yaml

Need more help? open an issue.