From 1942cdd4e238f05e617aa41b8b348bbb2be57697 Mon Sep 17 00:00:00 2001 From: aggarwalakshun Date: Wed, 15 Oct 2025 04:56:59 +0530 Subject: [PATCH] Add Jellyfin deployment, service, and PVC configurations --- .../default/media/jellyfin/jellyfin-pvc.yml | 14 +++++ .../default/media/jellyfin/jellyfin-svc.yml | 14 +++++ clusters/default/media/jellyfin/jellyfin.yml | 54 +++++++++++++++++++ 3 files changed, 82 insertions(+) create mode 100644 clusters/default/media/jellyfin/jellyfin-pvc.yml create mode 100644 clusters/default/media/jellyfin/jellyfin-svc.yml create mode 100644 clusters/default/media/jellyfin/jellyfin.yml diff --git a/clusters/default/media/jellyfin/jellyfin-pvc.yml b/clusters/default/media/jellyfin/jellyfin-pvc.yml new file mode 100644 index 0000000..cc7cdb5 --- /dev/null +++ b/clusters/default/media/jellyfin/jellyfin-pvc.yml @@ -0,0 +1,14 @@ +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: jellyfin-longhorn + namespace: media +spec: + accessModes: + - ReadWriteOnce + volumeMode: Filesystem + resources: + requests: + storage: 15Gi + storageClassName: longhorn diff --git a/clusters/default/media/jellyfin/jellyfin-svc.yml b/clusters/default/media/jellyfin/jellyfin-svc.yml new file mode 100644 index 0000000..21f224f --- /dev/null +++ b/clusters/default/media/jellyfin/jellyfin-svc.yml @@ -0,0 +1,14 @@ +--- +apiVersion: v1 +kind: Service +metadata: + name: jellyfin-service + namespace: media +spec: + type: LoadBalancer + selector: + app: jellyfin + ports: + - port: 8096 + targetPort: 8096 + protocol: TCP diff --git a/clusters/default/media/jellyfin/jellyfin.yml b/clusters/default/media/jellyfin/jellyfin.yml new file mode 100644 index 0000000..9733a0a --- /dev/null +++ b/clusters/default/media/jellyfin/jellyfin.yml @@ -0,0 +1,54 @@ +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: jellyfin + namespace: media +spec: + strategy: + type: Recreate + replicas: 1 + selector: + matchLabels: + app: jellyfin + template: + metadata: + labels: + app: jellyfin + spec: + containers: + - name: jellyfin + image: jellyfin/jellyfin:10.10.7 + ports: + - containerPort: 8096 + volumeMounts: + - name: media + mountPath: /media + - name: config + mountPath: /config + - name: cache + mountPath: /cache + - name: i915 + mountPath: /dev/dri + securityContext: + privileged: true + resources: + requests: + gpu.intel.com/i915: "1" + limits: + gpu.intel.com/i915: "1" + volumes: + - name: config + persistentVolumeClaim: + claimName: jellyfin-longhorn + - name: cache + hostPath: + path: /tmp/ + type: Directory + - name: media + nfs: + server: 10.0.0.123 + path: /merge + - name: i915 + hostPath: + path: /dev/dri