feat(sonarr): added readme content and kube config

This commit is contained in:
Fishandchips321 2026-04-15 16:23:35 +01:00
parent 1b4e34cbe4
commit 5bab8add83
4 changed files with 104 additions and 0 deletions

View file

@ -0,0 +1,8 @@
# Sonarr
Sonarr is a PVR for Usenet and BitTorrent users. It can monitor multiple RSS feeds for new episodes of your favorite shows 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/Sonarr/Sonarr)
## 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 TV shows will be stored by Sonarr). Also set the user ID and group ID that Sonarr will run under. This will affect the user and group of files and folders managed by Sonarr
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)

63
Sonarr/deployment.yml Normal file
View file

@ -0,0 +1,63 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: sonarr
spec:
replicas: 1
selector:
matchLabels:
app: sonarr
template:
metadata:
labels:
app: sonarr
spec:
containers:
- name: sonarr
image: linuxserver/sonarr:latest
ports:
- containerPort: 8989
resources:
requests:
cpu: "250m"
memory: "256Mi"
limits:
cpu: "500m"
memory: "1Gi"
volumeMounts:
- name: config
mountPath: /config
- name: media
mountPath: /media
- name: downloads
mountPath: /downloads
env:
- name: PUID
value: <user ID>
- name: PGID
value: <group ID>
- name: TZ
value: "UTC"
volumes:
- name: config
persistentVolumeClaim:
claimName: sonarr-config-pvc
- name: media
hostPath:
path: <media directory host path>
type: Directory
- name: downloads
hostPath:
path: <downloads directory host path>
type: Directory
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: sonarr-config-pvc
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 5Gi

22
Sonarr/ingress.yml Normal file
View file

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

11
Sonarr/service.yml Normal file
View file

@ -0,0 +1,11 @@
apiVersion: v1
kind: Service
metadata:
name: sonarr
spec:
selector:
app: sonarr
ports:
- protocol: TCP
port: 80
targetPort: 8989