apiVersion: apps/v1 kind: Deployment metadata: name: radarr labels: app: radarr {{- include "media.labels" . | nindent 4 }} spec: replicas: 1 strategy: type: Recreate selector: matchLabels: app: radarr template: metadata: labels: app: radarr spec: {{- include "media.requireMacWorker" . | nindent 6 }} containers: - name: radarr image: {{ .Values.radarr.image }} ports: - containerPort: 7878 env: {{- include "media.commonEnv" . | nindent 12 }} volumeMounts: - name: config mountPath: /config - name: data mountPath: /data volumes: - name: config hostPath: path: {{ .Values.serviceData }}/radarr/config type: DirectoryOrCreate - name: data hostPath: path: /dogstore/sonarr/data # Media type: DirectoryOrCreate --- apiVersion: v1 kind: Service metadata: name: radarr labels: app: radarr spec: selector: app: radarr ports: - port: 7878 targetPort: 7878 --- apiVersion: traefik.io/v1alpha1 kind: IngressRoute metadata: name: radarr-internal annotations: kubernetes.io/ingress.class: traefik-internal spec: entryPoints: - web routes: - match: Host(`radarr.{{ .Values.internalDomain }}`) kind: Rule services: - name: radarr port: 7878 --- apiVersion: traefik.io/v1alpha1 kind: IngressRoute metadata: name: radarr-internal-tls annotations: kubernetes.io/ingress.class: traefik-internal spec: entryPoints: - websecure routes: - match: Host(`radarr.{{ .Values.internalDomain }}`) kind: Rule services: - name: radarr port: 7878 tls: {}