From 9e7279d5433c3656ca3406970d95b71af16d72aa Mon Sep 17 00:00:00 2001 From: Michael Thomson Date: Wed, 17 Apr 2024 10:16:33 -0400 Subject: [PATCH] jellyseer --- media/jellyseerr/config.yaml | 9 +++++++++ media/jellyseerr/deployment.yaml | 32 ++++++++++++++++++++++++++++++ media/jellyseerr/dns-endpoint.yaml | 12 +++++++++++ media/jellyseerr/ingress.yaml | 25 +++++++++++++++++++++++ media/jellyseerr/pvc-config.yaml | 12 +++++++++++ media/jellyseerr/service.yaml | 12 +++++++++++ 6 files changed, 102 insertions(+) create mode 100644 media/jellyseerr/config.yaml create mode 100644 media/jellyseerr/deployment.yaml create mode 100644 media/jellyseerr/dns-endpoint.yaml create mode 100644 media/jellyseerr/ingress.yaml create mode 100644 media/jellyseerr/pvc-config.yaml create mode 100644 media/jellyseerr/service.yaml diff --git a/media/jellyseerr/config.yaml b/media/jellyseerr/config.yaml new file mode 100644 index 0000000..21a0556 --- /dev/null +++ b/media/jellyseerr/config.yaml @@ -0,0 +1,9 @@ +apiVersion: v1 +kind: ConfigMap +metadata: + name: jellyseerr-config + namespace: media +data: + PUID: "1000" + PGID: "1000" + LOG_LEVEL: "debug" diff --git a/media/jellyseerr/deployment.yaml b/media/jellyseerr/deployment.yaml new file mode 100644 index 0000000..ca63225 --- /dev/null +++ b/media/jellyseerr/deployment.yaml @@ -0,0 +1,32 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: jellyseerr + namespace: media +spec: + selector: + matchLabels: + app: jellyseerr + template: + metadata: + labels: + app: jellyseerr + spec: + containers: + - name: jellyseerr + image: fallenbagel/jellyseerr:latest + envFrom: + - configMapRef: + name: jellyseerr-config + optional: false + ports: + - containerPort: 5055 + name: http + protocol: TCP + volumeMounts: + - name: config + mountPath: /app/config + volumes: + - name: config + persistentVolumeClaim: + claimName: jellyseerr-config diff --git a/media/jellyseerr/dns-endpoint.yaml b/media/jellyseerr/dns-endpoint.yaml new file mode 100644 index 0000000..deb68fe --- /dev/null +++ b/media/jellyseerr/dns-endpoint.yaml @@ -0,0 +1,12 @@ +apiVersion: externaldns.k8s.io/v1alpha1 +kind: DNSEndpoint +metadata: + name: jellyseerr.michaelthomson.dev + namespace: media +spec: + endpoints: + - dnsName: jellyseerr.michaelthomson.dev + recordTTL: 180 + recordType: CNAME + targets: + - server.michaelthomson.dev diff --git a/media/jellyseerr/ingress.yaml b/media/jellyseerr/ingress.yaml new file mode 100644 index 0000000..04a40cc --- /dev/null +++ b/media/jellyseerr/ingress.yaml @@ -0,0 +1,25 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: jellyseerr + namespace: media + annotations: + traefik.ingress.kubernetes.io/router.entrypoints: websecure + # traefik.ingress.kubernetes.io/router.middlewares: traefik-authentik@kubernetescrd + traefik.ingress.kubernetes.io/router.tls: "true" +spec: + rules: + - host: jellyseerr.michaelthomson.dev + http: + paths: + - pathType: ImplementationSpecific + path: / + backend: + service: + name: jellyseerr + port: + name: http + tls: + - hosts: + - jellyseerr.michaelthomson.dev + secretName: letsencrypt-wildcard-cert-michaelthomson.dev diff --git a/media/jellyseerr/pvc-config.yaml b/media/jellyseerr/pvc-config.yaml new file mode 100644 index 0000000..6204094 --- /dev/null +++ b/media/jellyseerr/pvc-config.yaml @@ -0,0 +1,12 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: jellyseerr-config + namespace: media +spec: + resources: + requests: + storage: 1Gi + storageClassName: longhorn + accessModes: + - ReadWriteOnce diff --git a/media/jellyseerr/service.yaml b/media/jellyseerr/service.yaml new file mode 100644 index 0000000..eaacd20 --- /dev/null +++ b/media/jellyseerr/service.yaml @@ -0,0 +1,12 @@ +apiVersion: v1 +kind: Service +metadata: + name: jellyseerr + namespace: media +spec: + selector: + app: jellyseerr + ports: + - port: 80 + targetPort: http + name: http