Skip to content

Deploying Lidarr

Introduction

Lidarr is an open-source music collection manager that automates the process of searching, downloading, and organizing your music library. Part of the popular Arr suite of media management tools alongside Sonarr and Radarr, Lidarr monitors multiple sources for new releases from your favorite artists and automatically downloads them in your preferred quality.

Built on .NET, Lidarr provides a polished web interface for managing your music collection. The application integrates with various download clients, indexers, and music sources to create a seamless automation pipeline for music acquisition.

Key highlights of Lidarr:

  • Artist Monitoring: Track artists and automatically download new releases
  • Album Management: Monitor specific albums or entire discographies
  • Quality Profiles: Define preferred audio quality and formats
  • Automatic Downloads: Integration with Usenet and torrent download clients
  • Metadata Management: Fetch and apply artist and album information
  • Failed Download Handling: Automatically retry or find alternatives
  • Calendar View: See upcoming and recent releases
  • Manual Import: Add existing music to your library
  • Notifications: Alerts for downloads, issues, and new releases
  • API Access: Integrate with other applications and automation tools
  • Mobile-Friendly: Responsive interface for any device

This guide walks through deploying Lidarr on Klutch.sh using Docker.

Why Deploy Lidarr on Klutch.sh

Deploying Lidarr on Klutch.sh provides several advantages:

Simplified Deployment: Klutch.sh automatically builds Lidarr from your Dockerfile. Push to GitHub, and your music manager deploys automatically.

Persistent Storage: Attach persistent volumes for your configuration and music library. Your settings and collection survive restarts.

HTTPS by Default: Klutch.sh provides automatic SSL certificates for secure access to your Lidarr interface.

GitHub Integration: Connect your repository for automatic redeployments.

Scalable Resources: Allocate resources based on library size and indexer activity.

Environment Variable Management: Configure settings securely.

Custom Domains: Assign a custom domain for your music management interface.

Always-On Availability: Lidarr continues monitoring and downloading 24/7.

Prerequisites

Before deploying Lidarr on Klutch.sh, ensure you have:

  • A Klutch.sh account
  • A GitHub account with a repository for your configuration
  • Basic familiarity with Docker and containerization concepts
  • Access to Usenet or torrent indexers
  • A download client (SABnzbd, NZBGet, qBittorrent, etc.)
  • Storage for your music collection
  • (Optional) A custom domain for your Lidarr instance

Understanding Lidarr Architecture

Lidarr uses a service-oriented architecture:

Web Interface: ASP.NET Core application serving the UI and API.

SQLite Database: Stores artists, albums, settings, and history.

Scheduler: Background service managing search and download tasks.

Download Client Integration: Communicates with download clients via APIs.

Indexer Integration: Queries multiple indexers for music releases.

Media Management: Handles file organization and renaming.

Preparing Your Repository

Repository Structure

lidarr-deploy/
├── Dockerfile
├── README.md
└── .dockerignore

Creating the Dockerfile

FROM lscr.io/linuxserver/lidarr:latest
# Environment configuration
ENV PUID=1000
ENV PGID=1000
ENV TZ=America/New_York
# Create directories
RUN mkdir -p /config /music /downloads
# Expose web interface port
EXPOSE 8686
# Health check
HEALTHCHECK --interval=30s --timeout=10s --start-period=60s --retries=3 \
CMD curl -f http://localhost:8686/ || exit 1

Creating the .dockerignore File

.git
.github
*.md
LICENSE
.gitignore
*.log
.DS_Store
.env
.env.local

Environment Variables Reference

VariableRequiredDefaultDescription
PUIDNo1000User ID for file permissions
PGIDNo1000Group ID for file permissions
TZNoUTCTimezone for scheduling

Deploying Lidarr on Klutch.sh

    Push Your Repository to GitHub

    Terminal window
    git init
    git add Dockerfile .dockerignore README.md
    git commit -m "Initial Lidarr deployment configuration"
    git remote add origin https://github.com/yourusername/lidarr-deploy.git
    git push -u origin main

    Create a New Project on Klutch.sh

    Navigate to the Klutch.sh dashboard and create a new project named “lidarr” or “music-manager”.

    Create a New App

    Within your project, create a new app. Connect your GitHub account and select your Lidarr repository.

    Configure HTTP Traffic

    In the deployment settings:

    • Select HTTP as the traffic type
    • Set the internal port to 8686 (Lidarr’s default port)

    Set Environment Variables

    Add the following:

    VariableValue
    PUID1000
    PGID1000
    TZYour timezone (e.g., America/New_York)

    Attach Persistent Volumes

    Mount PathRecommended SizePurpose
    /config5 GBLidarr configuration and database
    /music500+ GBMusic library storage
    /downloads100+ GBDownload staging area

    Deploy Your Application

    Click Deploy to start the build process.

    Access Lidarr

    Once deployment completes, access Lidarr at https://your-app.klutch.sh. Complete the initial setup wizard.

Initial Configuration

Download Clients

Connect your download clients:

  1. Navigate to Settings > Download Clients
  2. Add your preferred client (SABnzbd, NZBGet, qBittorrent, etc.)
  3. Enter connection details and test
  4. Configure category/label for music downloads

Indexers

Add music indexers:

  1. Navigate to Settings > Indexers
  2. Add Usenet or torrent indexers
  3. Enter API keys and connection details
  4. Test each indexer connection

Quality Profiles

Configure audio quality preferences:

  1. Navigate to Settings > Profiles
  2. Edit or create quality profiles
  3. Set preferred formats (FLAC, MP3, etc.)
  4. Define upgrade cutoffs

Root Folders

Set up library locations:

  1. Navigate to Settings > Media Management
  2. Add root folders pointing to your music storage
  3. Configure naming conventions
  4. Set import behavior

Managing Your Library

Adding Artists

Start building your collection:

  1. Click Add New > Artist Search
  2. Search for artists by name
  3. Select the correct artist from results
  4. Choose monitoring options
  5. Start search for existing releases

Importing Existing Music

Add music you already have:

  1. Navigate to Wanted > Manual Import
  2. Point to directories containing music
  3. Review matched releases
  4. Confirm imports

Monitoring Options

Configure what to download:

  • All Albums: Download everything
  • Future Albums: Only new releases
  • Missing Albums: Fill gaps in discography
  • None: Manual control only

Production Best Practices

Security Recommendations

  • Enable authentication in Settings > General
  • Use Forms authentication for web access
  • Keep Lidarr updated regularly
  • Secure download client connections

Performance Tips

  • Use SSD storage for the config directory
  • Limit concurrent downloads
  • Schedule intensive tasks during off-peak hours
  • Monitor disk space regularly

Backup Strategy

  1. Back up the /config directory regularly
  2. Export lists and settings periodically
  3. Document indexer configurations

Troubleshooting

Downloads Not Starting

  • Verify download client connection
  • Check indexer status
  • Review download client logs
  • Ensure sufficient disk space

Wrong Releases Downloaded

  • Adjust quality profiles
  • Use release profiles for preferred groups
  • Check indexer priorities

Import Failures

  • Verify file permissions
  • Check path mappings
  • Review Lidarr logs
  • Ensure media is recognized

Additional Resources

Conclusion

Deploying Lidarr on Klutch.sh gives you an automated music collection manager with continuous monitoring and downloading capabilities. Never miss a new release from your favorite artists with Lidarr handling the automation.

With persistent storage for your configuration and music library, you can build and maintain a well-organized music collection with minimal manual intervention.