add readarr

This commit is contained in:
2025-04-22 18:55:54 +02:00
parent 80a6fee1c5
commit 8fd772ee8b
31 changed files with 263 additions and 748 deletions

View File

@ -5,14 +5,23 @@ metadata:
labels:
{{- include "radarr.labels" . | nindent 4 }}
spec:
{{- if not .Values.autoscaling.enabled }}
replicas: {{ .Values.replicaCount }}
{{- end }}
selector:
matchLabels:
{{- include "radarr.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "radarr.selectorLabels" . | nindent 8 }}
{{- include "radarr.labels" . | nindent 8 }}
{{- with .Values.podLabels }}
{{- toYaml . | nindent 8 }}
{{- end }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
@ -22,62 +31,37 @@ spec:
{{- toYaml .Values.podSecurityContext | nindent 8 }}
containers:
- name: {{ .Chart.Name }}
securityContext:
{{- toYaml .Values.securityContext | nindent 12 }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
env:
- name: TZ
value: {{ .Values.env.TZ | quote }}
- name: PUID
value: {{ .Values.securityContext.PUID | quote }}
- name: PGID
value: {{ .Values.securityContext.PGID | quote }}
{{- range .Values.env }}
- name: {{ .name }}
value: {{ .value | quote }}
{{- end }}
ports:
- name: http
containerPort: {{ .Values.service.port }}
protocol: TCP
livenessProbe:
{{- toYaml .Values.livenessProbe | nindent 12 }}
readinessProbe:
{{- toYaml .Values.readinessProbe | nindent 12 }}
resources:
{{- toYaml .Values.resources | nindent 12 }}
volumeMounts:
- name: config
mountPath: {{ .Values.persistence.config.mountPath }}
- name: movies
mountPath: {{ .Values.persistence.movies.mountPath }}
- name: downloads
mountPath: {{ .Values.persistence.downloads.mountPath }}
livenessProbe:
httpGet:
path: /
port: http
readinessProbe:
httpGet:
path: /
port: http
resources:
{{- toYaml .Values.resources | nindent 12 }}
- name: media
mountPath: {{ .Values.persistence.media.mountPath }}
volumes:
- name: config
{{- if .Values.persistence.config.enabled }}
persistentVolumeClaim:
claimName: {{ include "radarr.fullname" . }}-config
{{- else }}
emptyDir: {}
{{- end }}
- name: movies
{{- if .Values.persistence.movies.enabled }}
claimName: {{ .Values.persistence.config.claimName }}
- name: media
persistentVolumeClaim:
claimName: {{ include "radarr.fullname" . }}-movies
{{- else }}
emptyDir: {}
{{- end }}
- name: downloads
{{- if .Values.persistence.downloads.enabled }}
persistentVolumeClaim:
{{- if .Values.persistence.downloads.existingClaim }}
claimName: {{ .Values.persistence.downloads.existingClaim }}
{{- else }}
claimName: {{ include "radarr.fullname" . }}-downloads
{{- end }}
{{- else }}
emptyDir: {}
{{- end }}
claimName: {{ .Values.persistence.media.claimName }}
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}

View File

@ -1,53 +1,27 @@
{{- if .Values.persistence.config.enabled }}
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: {{ include "radarr.fullname" . }}-config
name: {{ .Values.persistence.config.claimName }}
labels:
{{- include "radarr.labels" . | nindent 4 }}
spec:
accessModes:
- {{ .Values.persistence.config.accessMode | quote }}
{{- if .Values.persistence.config.storageClass }}
storageClassName: {{ .Values.persistence.config.storageClass | quote }}
{{- end }}
- ReadWriteOnce
resources:
requests:
storage: {{ .Values.persistence.config.size | quote }}
{{- end }}
storage: 1Gi
---
{{- if .Values.persistence.movies.enabled }}
{{- if not (lookup "v1" "PersistentVolumeClaim" .Release.Namespace "media-storage") }}
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: {{ include "radarr.fullname" . }}-movies
name: media-storage
labels:
{{- include "radarr.labels" . | nindent 4 }}
spec:
accessModes:
- {{ .Values.persistence.movies.accessMode | quote }}
{{- if .Values.persistence.movies.storageClass }}
storageClassName: {{ .Values.persistence.movies.storageClass | quote }}
{{- end }}
- ReadWriteOnce
resources:
requests:
storage: {{ .Values.persistence.movies.size | quote }}
{{- end }}
---
{{- if and .Values.persistence.downloads.enabled (not .Values.persistence.downloads.existingClaim) }}
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: {{ include "radarr.fullname" . }}-downloads
labels:
{{- include "radarr.labels" . | nindent 4 }}
spec:
accessModes:
- {{ .Values.persistence.downloads.accessMode | quote }}
{{- if .Values.persistence.downloads.storageClass }}
storageClassName: {{ .Values.persistence.downloads.storageClass | quote }}
{{- end }}
resources:
requests:
storage: {{ .Values.persistence.downloads.size | quote }}
storage: 500Gi
{{- end }}

View File

@ -15,9 +15,9 @@ fullnameOverride: ""
serviceAccount:
# Specifies whether a service account should be created
create: true
create: false
# Automatically mount a ServiceAccount's API credentials?
automount: true
automount: false
# Annotations to add to the service account
annotations: {}
# The name of the service account to use.
@ -28,28 +28,37 @@ podAnnotations: {}
podLabels: {}
podSecurityContext:
runAsUser: 1000
runAsGroup: 1000
fsGroup: 1000
runAsUser: 0
runAsGroup: 0
fsGroup: 0
securityContext:
PUID: 1000
PGID: 1000
privileged: true
capabilities:
add:
- CHOWN
- FOWNER
- SETUID
- SETGID
service:
type: ClusterIP
port: 7878
ingress:
enabled: false
enabled: true
className: "nginx"
annotations: {}
annotations:
cert-manager.io/cluster-issuer: "letsencrypt"
hosts:
- host: radarr.local
- host: radarr.media.mumme-it.de
paths:
- path: /
pathType: Prefix
tls: []
tls:
- hosts:
- radarr.media.mumme-it.de
secretName: radarr-tls
resources:
limits:
@ -96,27 +105,18 @@ affinity: {}
# Environment variables
env:
TZ: "UTC"
- name: TZ
value: "Europe/Berlin"
- name: PUID
value: "0"
- name: PGID
value: "0"
# Persistence configuration
persistence:
config:
enabled: true
storageClass: ""
accessMode: ReadWriteOnce
size: 1Gi
claimName: radarr-config
mountPath: /config
movies:
enabled: true
storageClass: ""
accessMode: ReadWriteOnce
size: 100Gi
mountPath: /movies
downloads:
enabled: true
storageClass: ""
accessMode: ReadWriteOnce
size: 20Gi
mountPath: /downloads
# If you want to use existing PVC from qBittorrent
existingClaim: ""
media:
claimName: media-storage
mountPath: /media