123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101 |
- ---
- apiVersion: v1
- kind: Namespace
- metadata:
- name: plex
- ---
- apiVersion: apps/v1
- kind: Deployment
- metadata:
- name: jellyfin
- namespace: plex
- spec:
- selector:
- matchLabels:
- app: jellyfin
- replicas: 1
- template:
- metadata:
- labels:
- app: jellyfin
- spec:
- containers:
- - name: jellyfin
- image: jellyfin/jellyfin:10.7.7
- ports:
- - containerPort: 8096
- name: http-web-svc
- volumeMounts:
- - mountPath: "/config"
- name: config
- - mountPath: "/media"
- name: media
- - mountPath: "/transcodes"
- name: tmpfs
- env:
- - name: PUID
- value: "1000"
- - name: PGID
- value: "1000"
- livenessProbe:
- httpGet:
- path: /web/index.html
- port: 8096
- failureThreshold: 5
- initialDelaySeconds: 10
- periodSeconds: 30
- timeoutSeconds: 10
- #resources:
- # limits:
- # nvidia.com/gpu: 1
- affinity:
- nodeAffinity:
- requiredDuringSchedulingIgnoredDuringExecution:
- nodeSelectorTerms:
- - matchExpressions:
- - key: gpu-node
- operator: In
- values:
- - "true"
- volumes:
- - name: config
- persistentVolumeClaim:
- claimName: jellyfin-config-pvc
- - name: media
- persistentVolumeClaim:
- claimName: plex-media-pvc
- - name: tmpfs
- emptyDir:
- medium: Memory
- sizeLimit: 12Gi
- ---
- apiVersion: v1
- kind: Service
- metadata:
- name: jellyfin-service
- namespace: plex
- spec:
- selector:
- app: jellyfin
- type: ClusterIP
- ports:
- - name: jellyfin-web-port
- protocol: TCP
- port: 8096
- targetPort: http-web-svc
- ---
- apiVersion: traefik.containo.us/v1alpha1
- kind: IngressRoute
- metadata:
- name: jellyfin
- namespace: plex
- spec:
- entryPoints:
- - websecure
- routes:
- - kind: Rule
- match: Host(`jellyfin.jibby.org`)
- services:
- - kind: Service
- name: jellyfin-service
- port: 8096
|