feat: Add Lidarr and Prowlarr for music automation

Add Lidarr for music collection management and Prowlarr for
unified indexer management across all *arr applications.

- Lidarr accessible at lidarr.fig.systems
- Prowlarr accessible at prowlarr.fig.systems
- Both integrated with existing media automation stack
This commit is contained in:
Eduardo Figueroa 2025-12-03 19:54:05 +00:00
parent fb25e9fea4
commit 8d0f60d9d1
2 changed files with 92 additions and 0 deletions

View file

@ -0,0 +1,49 @@
# Lidarr - Music collection manager
# Docs: https://wiki.servarr.com/lidarr
services:
lidarr:
container_name: lidarr
image: lscr.io/linuxserver/lidarr:latest
env_file:
- .env
volumes:
- ./config:/config
# Media library
- /mnt/media/music:/media/music
# Download folders
- /mnt/media/downloads:/downloads
- /mnt/media/complete:/complete
- /mnt/media/incomplete:/incomplete
restart: unless-stopped
networks:
- homelab
labels:
# Traefik
traefik.enable: true
traefik.docker.network: homelab
# Web UI
traefik.http.routers.lidarr.rule: Host(`lidarr.fig.systems`)
traefik.http.routers.lidarr.entrypoints: websecure
traefik.http.routers.lidarr.tls.certresolver: letsencrypt
traefik.http.services.lidarr.loadbalancer.server.port: 8686
# SSO Protection
traefik.http.routers.lidarr.middlewares: tinyauth
# Homarr Discovery
homarr.name: Lidarr (Music)
homarr.group: Automation
homarr.icon: mdi:music-box-multiple
healthcheck:
test: ["CMD-SHELL", "curl -f http://localhost:8686/ping || exit 1"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
networks:
homelab:
external: true

View file

@ -0,0 +1,43 @@
# Prowlarr - Indexer Manager for *arr Apps
# Docs: https://wiki.servarr.com/prowlarr
services:
prowlarr:
container_name: prowlarr
image: lscr.io/linuxserver/prowlarr:latest
env_file:
- .env
volumes:
- ./config:/config
restart: unless-stopped
networks:
- homelab
labels:
# Traefik
traefik.enable: true
traefik.docker.network: homelab
# Web UI
traefik.http.routers.prowlarr.rule: Host(`prowlarr.fig.systems`)
traefik.http.routers.prowlarr.entrypoints: websecure
traefik.http.routers.prowlarr.tls.certresolver: letsencrypt
traefik.http.services.prowlarr.loadbalancer.server.port: 9696
# SSO Protection
traefik.http.routers.prowlarr.middlewares: tinyauth
# Homarr Discovery
homarr.name: Prowlarr (Indexers)
homarr.group: Automation
homarr.icon: mdi:cloud-search
healthcheck:
test: ["CMD-SHELL", "curl -f http://localhost:9696/ping || exit 1"]
interval: 30s
timeout: 10s
retries: 3
start_period: 40s
networks:
homelab:
external: true