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└── .dockerignoreCreating the Dockerfile
FROM lscr.io/linuxserver/lidarr:latest
# Environment configurationENV PUID=1000ENV PGID=1000ENV TZ=America/New_York
# Create directoriesRUN mkdir -p /config /music /downloads
# Expose web interface portEXPOSE 8686
# Health checkHEALTHCHECK --interval=30s --timeout=10s --start-period=60s --retries=3 \ CMD curl -f http://localhost:8686/ || exit 1Creating the .dockerignore File
.git.github*.mdLICENSE.gitignore*.log.DS_Store.env.env.localEnvironment Variables Reference
| Variable | Required | Default | Description |
|---|---|---|---|
PUID | No | 1000 | User ID for file permissions |
PGID | No | 1000 | Group ID for file permissions |
TZ | No | UTC | Timezone for scheduling |
Deploying Lidarr on Klutch.sh
- Select HTTP as the traffic type
- Set the internal port to 8686 (Lidarr’s default port)
Push Your Repository to GitHub
git initgit add Dockerfile .dockerignore README.mdgit commit -m "Initial Lidarr deployment configuration"git remote add origin https://github.com/yourusername/lidarr-deploy.gitgit push -u origin mainCreate 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:
Set Environment Variables
Add the following:
| Variable | Value |
|---|---|
PUID | 1000 |
PGID | 1000 |
TZ | Your timezone (e.g., America/New_York) |
Attach Persistent Volumes
| Mount Path | Recommended Size | Purpose |
|---|---|---|
/config | 5 GB | Lidarr configuration and database |
/music | 500+ GB | Music library storage |
/downloads | 100+ GB | Download 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:
- Navigate to Settings > Download Clients
- Add your preferred client (SABnzbd, NZBGet, qBittorrent, etc.)
- Enter connection details and test
- Configure category/label for music downloads
Indexers
Add music indexers:
- Navigate to Settings > Indexers
- Add Usenet or torrent indexers
- Enter API keys and connection details
- Test each indexer connection
Quality Profiles
Configure audio quality preferences:
- Navigate to Settings > Profiles
- Edit or create quality profiles
- Set preferred formats (FLAC, MP3, etc.)
- Define upgrade cutoffs
Root Folders
Set up library locations:
- Navigate to Settings > Media Management
- Add root folders pointing to your music storage
- Configure naming conventions
- Set import behavior
Managing Your Library
Adding Artists
Start building your collection:
- Click Add New > Artist Search
- Search for artists by name
- Select the correct artist from results
- Choose monitoring options
- Start search for existing releases
Importing Existing Music
Add music you already have:
- Navigate to Wanted > Manual Import
- Point to directories containing music
- Review matched releases
- 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
- Back up the
/configdirectory regularly - Export lists and settings periodically
- 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
- Official Lidarr Website
- Lidarr Wiki
- Lidarr GitHub Repository
- Lidarr Discord
- Klutch.sh Persistent Volumes
- Klutch.sh Deployments
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.