initial migration
This commit is contained in:
		
							
								
								
									
										32
									
								
								apps/media/jellyfin.ingress.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								apps/media/jellyfin.ingress.yaml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,32 @@ | ||||
| apiVersion: traefik.containo.us/v1alpha1 | ||||
| kind: IngressRoute | ||||
| metadata: | ||||
|   name: jellyfin-ingress | ||||
|   namespace: media | ||||
| spec: | ||||
|   entryPoints: | ||||
|     - websecure | ||||
|   routes: | ||||
|     - match: Host(`media.kluster.moll.re`) | ||||
|       middlewares: | ||||
|         - name: jellyfin-websocket | ||||
|       kind: Rule | ||||
|       services: | ||||
|         - name: jellyfin | ||||
|           port: 8096 | ||||
|   tls: | ||||
|     certResolver: default-tls | ||||
|  | ||||
| --- | ||||
| apiVersion: traefik.containo.us/v1alpha1 | ||||
| kind: Middleware | ||||
| metadata: | ||||
|   name: jellyfin-websocket | ||||
|   namespace: media | ||||
| spec: | ||||
|   headers: | ||||
|     customRequestHeaders: | ||||
|       X-Forwarded-Proto: "https" | ||||
|       Upgrade: "websocket" | ||||
|  | ||||
|  | ||||
							
								
								
									
										72
									
								
								apps/media/jellyfin.pvc.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								apps/media/jellyfin.pvc.yaml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,72 @@ | ||||
|  | ||||
| apiVersion: v1 | ||||
| kind: PersistentVolume | ||||
| metadata: | ||||
|   namespace: media | ||||
|   name: jellyfin-config-nfs | ||||
|   labels: | ||||
|     directory: jellyfin | ||||
|  | ||||
| spec: | ||||
|   storageClassName: slow | ||||
|   capacity: | ||||
|     storage: "1Gi" | ||||
|   volumeMode: Filesystem | ||||
|   accessModes: | ||||
|     - ReadWriteOnce | ||||
|   nfs: | ||||
|     path: /export/kluster/jellyfin-config | ||||
|     server: 192.168.1.157 | ||||
| --- | ||||
| apiVersion: v1 | ||||
| kind: PersistentVolumeClaim | ||||
| metadata: | ||||
|   namespace: media | ||||
|   name: jellyfin-config-nfs | ||||
| spec: | ||||
|   storageClassName: slow | ||||
|   accessModes: | ||||
|     - ReadWriteOnce | ||||
|   resources: | ||||
|     requests: | ||||
|       storage: "1Gi" | ||||
|   selector: | ||||
|     matchLabels: | ||||
|       directory: jellyfin | ||||
| --- | ||||
|  | ||||
| apiVersion: v1 | ||||
| kind: PersistentVolume | ||||
| metadata: | ||||
|   namespace: media | ||||
|   name: jellyfin-data-nfs | ||||
|   labels: | ||||
|     directory: jellyfin | ||||
|  | ||||
| spec: | ||||
|   storageClassName: slow | ||||
|   capacity: | ||||
|     storage: "1Ti" | ||||
|   volumeMode: Filesystem | ||||
|   accessModes: | ||||
|     - ReadWriteOnce | ||||
|   nfs: | ||||
|     path: /export/jellyfin-media | ||||
|     server: 192.168.1.157 | ||||
| --- | ||||
| apiVersion: v1 | ||||
| kind: PersistentVolumeClaim | ||||
| metadata: | ||||
|   namespace: media | ||||
|   name: jellyfin-data-nfs | ||||
| spec: | ||||
|   storageClassName: slow | ||||
|   accessModes: | ||||
|     - ReadWriteOnce | ||||
|   resources: | ||||
|     requests: | ||||
|       storage: "1Ti" | ||||
|   selector: | ||||
|     matchLabels: | ||||
|       directory: jellyfin | ||||
| --- | ||||
							
								
								
									
										108
									
								
								apps/media/jellyfin.values.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										108
									
								
								apps/media/jellyfin.values.yaml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,108 @@ | ||||
| image: | ||||
|   # -- image repository | ||||
|   repository: jellyfin/jellyfin | ||||
|   # -- image tag | ||||
|   tag: 10.8.9 | ||||
|  | ||||
|   # -- image pull policy | ||||
|   pullPolicy: IfNotPresent | ||||
|  | ||||
|  | ||||
| # -- environment variables. See [image docs](https://jellyfin.org/docs/general/administration/configuration.html) for more details. | ||||
| # @default -- See below | ||||
| env: | ||||
|   # -- Set the container timezone | ||||
|   TZ: Europe/Berlin | ||||
|  | ||||
| # -- Configures service settings for the chart. | ||||
| # @default -- See values.yaml | ||||
| service: | ||||
|   main: | ||||
|     ports: | ||||
|       http: | ||||
|         port: 8096 | ||||
|  | ||||
| ingress: | ||||
|   # -- Enable and configure ingress settings for the chart under this key. | ||||
|   # @default -- See values.yaml | ||||
|   main: | ||||
|     enabled: false | ||||
|  | ||||
| # -- Configure persistence settings for the chart under this key. | ||||
| # @default -- See values.yaml | ||||
| persistence: | ||||
|   config: | ||||
|     enabled: true | ||||
|     type: pvc | ||||
|     existingClaim: jellyfin-config-nfs | ||||
|     accessMode:  | ||||
|       - ReadWriteOnce | ||||
|  | ||||
|   # Cache does NOT contain temporary transcoding data. | ||||
|   cache: | ||||
|     enabled: false | ||||
|     mountPath: /cache | ||||
|  | ||||
|   media: | ||||
|     enabled: true | ||||
|     # use local storage | ||||
|     type: pvc | ||||
|     existingClaim: jellyfin-data-nfs | ||||
|     accessMode:  | ||||
|       - ReadWriteOnce | ||||
|     mountPath: /media | ||||
|  | ||||
|   # encoder: | ||||
|   #   enabled: true | ||||
|   #   type: hostPath | ||||
|   #   hostPath: /dev/dri/renderD128 | ||||
|  | ||||
|  | ||||
| # # -- Configure the Security Context for the Pod | ||||
| # podSecurityContext: | ||||
| #   runAsUser: 0 # root user -> access to /dev/video* | ||||
| #   runAsUser: 568 | ||||
| #   runAsGroup: 568 | ||||
| #   fsGroup: 568 | ||||
| #   # Hardware acceleration using an Intel iGPU w/ QuickSync | ||||
| #   # These IDs below should be matched to your `video` and `render` group on the host | ||||
| #   # To obtain those IDs run the following grep statement on the host: | ||||
| #   # $ cat /etc/group | grep "video\|render" | ||||
| #   # video:x:44: | ||||
| #   # render:x:109: | ||||
| #   supplementalGroups: | ||||
| #   - 44 | ||||
| #   - 109 | ||||
|  | ||||
| # resources: | ||||
| #   requests: | ||||
| #     # Hardware acceleration using an Intel iGPU w/ QuickSync and | ||||
| #     # using intel-gpu-plugin (https://github.com/intel/intel-device-plugins-for-kubernetes) | ||||
| #     gpu.intel.com/i915: 1 | ||||
| #     cpu: 200m | ||||
| #     memory: 256Mi | ||||
| #   limits: | ||||
| #     # Hardware acceleration using an Intel iGPU w/ QuickSync and | ||||
| #     # using intel-gpu-plugin (https://github.com/intel/intel-device-plugins-for-kubernetes) | ||||
| #     gpu.intel.com/i915: 1 | ||||
| #     memory: 4096Mi | ||||
|  | ||||
| probes: | ||||
|   # -- Liveness probe configuration | ||||
|   # @default -- See below | ||||
|   liveness: | ||||
|     # -- Enable the liveness probe | ||||
|     enabled: true | ||||
|     # -- Set this to `true` if you wish to specify your own livenessProbe | ||||
|     custom: true | ||||
|     # -- The spec field contains the values for the default livenessProbe. | ||||
|     # If you selected `custom: true`, this field holds the definition of the livenessProbe. | ||||
|     # @default -- See below | ||||
|     spec: | ||||
|       initialDelaySeconds: 100 | ||||
|       periodSeconds: 100 | ||||
|       timeoutSeconds: 5 | ||||
|       failureThreshold: 3 | ||||
|       httpGet: | ||||
|         path: /health | ||||
|         port: 8096 | ||||
		Reference in New Issue
	
	Block a user