Use app-template for radarr and sonarr

This commit is contained in:
SeanOMik 2023-04-08 16:46:01 -04:00
parent 1fbf9a6699
commit fecb77b3e1
Signed by: SeanOMik
GPG Key ID: 568F326C7EB33ACB
10 changed files with 148 additions and 164 deletions

View File

@ -1,42 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: radarr
namespace: download
labels:
app: radarr
kubernetes.io/name: "radarr"
spec:
replicas: 1
selector:
matchLabels:
app: radarr
template:
metadata:
labels:
app: radarr
spec:
containers:
- name: radarr
image: linuxserver/radarr
imagePullPolicy: Always
ports:
- containerPort: 7878
env:
- name: PGID
value: "1000"
- name: PUID
value: "1000"
volumeMounts:
- name: radarr
mountPath: /config
- name: radarr-download-storage
mountPath: /storage
volumes:
- name: radarr
hostPath:
path: /mnt/MainPool/Kubernetes/radarr
- name: radarr-download-storage
hostPath:
path: /mnt/MainPool/Media

View File

@ -0,0 +1,73 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
name: radarr
namespace: download
spec:
interval: 5m
chart:
spec:
chart: app-template
version: 1.3.x
sourceRef:
kind: HelmRepository
name: bjws-charts
namespace: flux-system
values:
image:
repository: lscr.io/linuxserver/radarr
tag: latest
env:
TZ: America/New_York
PGID: "1000"
PUID: "1000"
service:
main:
ports:
http:
port: 7878
probes:
liveness:
enabled: true
custom: true
spec:
httpGet:
path: /ping
port: 7878
initialDelaySeconds: 0
periodSeconds: 10
timeoutSeconds: 1
failureThreshold: 3
startup:
enabled: false
ingress:
main:
enabled: true
annotations:
cert-manager.io/cluster-issuer: "letsencrypt-production"
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.middlewares: traefik-authentik@kubernetescrd
hosts:
- host: "k3srad.***REMOVED***"
paths:
- path: /
pathType: Prefix
persistence:
config:
enabled: true
type: hostPath
hostPath: /mnt/MainPool/Kubernetes/radarr
mountPath: /config
storage:
enabled: true
type: hostPath
hostPath: /mnt/MainPool/Media
mountPath: /storage
resources:
requests:
cpu: 10m
memory: 350Mi
limits:
memory: 1500Mi

View File

@ -1,21 +0,0 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: radarr-ingress
namespace: download
annotations:
cert-manager.io/cluster-issuer: "letsencrypt-production"
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.middlewares: traefik-authentik@kubernetescrd
spec:
rules:
- host: "k3srad.***REMOVED***"
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: radarr
port:
name: radarr

View File

@ -1,6 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ./deployment.yaml
- ./ingress.yaml
- ./service.yaml
- ./helm-release.yaml

View File

@ -1,16 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: radarr
namespace: download
labels:
app: radarr
kubernetes.io/name: "radarr"
spec:
selector:
app: radarr
ports:
- name: radarr
port: 7878
targetPort: 7878

View File

@ -1,42 +0,0 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: sonarr
namespace: download
labels:
app: sonarr
kubernetes.io/name: "sonarr"
spec:
replicas: 1
selector:
matchLabels:
app: sonarr
template:
metadata:
labels:
app: sonarr
spec:
containers:
- name: sonarr
image: linuxserver/sonarr
imagePullPolicy: Always
ports:
- containerPort: 8989
env:
- name: PGID
value: "1000"
- name: PUID
value: "1000"
volumeMounts:
- name: sonarr
mountPath: /config
- name: sonarr-download-storage
mountPath: /storage
volumes:
- name: sonarr
hostPath:
path: /mnt/MainPool/Kubernetes/sonarr
- name: sonarr-download-storage
hostPath:
path: /mnt/MainPool/Media

View File

@ -0,0 +1,73 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
name: 8989
namespace: download
spec:
interval: 5m
chart:
spec:
chart: app-template
version: 1.3.x
sourceRef:
kind: HelmRepository
name: bjws-charts
namespace: flux-system
values:
image:
repository: lscr.io/linuxserver/sonarr
tag: latest
env:
TZ: America/New_York
PGID: "1000"
PUID: "1000"
service:
main:
ports:
http:
port: 8989
probes:
liveness:
enabled: true
custom: true
spec:
httpGet:
path: /ping
port: 8989
initialDelaySeconds: 0
periodSeconds: 10
timeoutSeconds: 1
failureThreshold: 3
startup:
enabled: false
ingress:
main:
enabled: true
annotations:
cert-manager.io/cluster-issuer: "letsencrypt-production"
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.middlewares: traefik-authentik@kubernetescrd
hosts:
- host: "k3sson.***REMOVED***"
paths:
- path: /
pathType: Prefix
persistence:
config:
enabled: true
type: hostPath
hostPath: /mnt/MainPool/Kubernetes/sonarr
mountPath: /config
storage:
enabled: true
type: hostPath
hostPath: /mnt/MainPool/Media
mountPath: /storage
resources:
requests:
cpu: 10m
memory: 350Mi
limits:
memory: 2500Mi

View File

@ -1,21 +0,0 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: sonarr-ingress
namespace: download
annotations:
cert-manager.io/cluster-issuer: "letsencrypt-production"
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.middlewares: traefik-authentik@kubernetescrd
spec:
rules:
- host: "k3sson.***REMOVED***"
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: sonarr
port:
name: sonarr

View File

@ -1,6 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ./deployment.yaml
- ./ingress.yaml
- ./service.yaml
- ./helm-release.yaml

View File

@ -1,16 +0,0 @@
apiVersion: v1
kind: Service
metadata:
name: sonarr
namespace: download
labels:
app: sonarr
kubernetes.io/name: "sonarr"
spec:
selector:
app: sonarr
ports:
- name: sonarr
port: 8989
targetPort: 8989