feat(lidarr): Added lidarr config and readme content

This commit is contained in:
Fishandchips321 2026-04-15 18:34:55 +01:00
parent a50fd5caca
commit b5946b3f81
5 changed files with 97 additions and 1 deletions

View file

@ -0,0 +1,8 @@
# Lidarr
Lidarr is a music collection manager for Usenet and BitTorrent users. It can monitor multiple RSS feeds for new tracks from your favorite artists and will grab, sort and rename them. It can also be configured to automatically upgrade the quality of files already downloaded when a better quality format becomes available.<br>
\- [source](https://github.com/Lidarr/Lidarr)
## Using this kubernetes config
In `deployment.yml`, set the host paths for the downloads folder (the folder that your download client of choice will download files to) and the media folder (where music will be stored by Lidarr). The downloads folder is mounted inside of the music folder in the container so Lidarr can detect them and move them into place once downloaded. This assumes you are using slskd to get music, which Lidarr cannot currently interact with. Also set the user ID and group ID that Lidarr will run under. This will affect the user and group of files and folders managed by Lidarr.
In `ingress.yml`, set the hostname that users will use to connect to the service. This config assumes you have cert-manager installed on your cluster, so if you want to provide HTTPS another way, feel free to comment out the `spec.tls` section (the annotation shouldn't affect anything, but you can comment it out as well if you want).

56
Lidarr/deployment.yml Normal file
View file

@ -0,0 +1,56 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: lidarr
spec:
selector:
matchLabels:
app: lidarr
template:
metadata:
labels:
app: lidarr
spec:
containers:
- name: lidarr
image: lscr.io/linuxserver/lidarr:latest
resources:
limits:
memory: "128Mi"
cpu: "500m"
ports:
- containerPort: 8686
volumeMounts:
- name: lidarr-config
mountPath: /config
- name: music
mountPath: /music
- name: downloads
mountPath: /music/downloads
env:
- name: PUID
value: <user ID>
- name: PGID
value: <group ID>
volumes:
- name: lidarr-config
persistentVolumeClaim:
claimName: lidarr-config
- name: music
hostPath:
path: <music directory host path>
- name: downloads
hostPath:
path: <downloads directory host path>
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: lidarr-config
spec:
resources:
requests:
storage: 128Mi
volumeMode: Filesystem
accessModes:
- ReadWriteOnce

22
Lidarr/ingress.yml Normal file
View file

@ -0,0 +1,22 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: lidarr
annotations:
cert-manager.io/cluster-issuer: "letsencrypt-production"
spec:
tls:
- hosts:
- <lidarr domain name>
secretName: lidarr-tls
rules:
- host: <lidarr domain name>
http:
paths:
- pathType: Prefix
path: "/"
backend:
service:
name: lidarr
port:
number: 80

10
Lidarr/service.yml Normal file
View file

@ -0,0 +1,10 @@
apiVersion: v1
kind: Service
metadata:
name: lidarr
spec:
selector:
app: lidarr
ports:
- port: 80
targetPort: 8686

View file

@ -14,7 +14,7 @@ This is a collection of kubernetes configurations for various services that I ha
- [ ] Inspircd - [ ] Inspircd
- [x] Jellyfin - [x] Jellyfin
- [x] Kavita - [x] Kavita
- [ ] Lidarr - [x] Lidarr
- [x] Mealie - [x] Mealie
- [ ] Minecraft Servers - [ ] Minecraft Servers
- [ ] MinIO - [ ] MinIO