kube-cascade/jellyfin/deployment.yaml

92 lines
2.2 KiB
YAML
Raw Normal View History

2023-12-20 22:40:16 +00:00
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: jellyfin
namespace: jellyfin
labels:
app: jellyfin
spec:
replicas: 1
selector:
matchLabels:
app: jellyfin
template:
metadata:
annotations:
k8s.v1.cni.cncf.io/networks: |
[{
"namespace": "cascade",
"name": "br0-static",
"ips": ["172.16.1.77/12"]
}]
labels:
app: jellyfin
spec:
containers:
- name: jellyfin
image: jellyfin/jellyfin:latest
imagePullPolicy: Always
ports:
- containerPort: 8096
name: http
- containerPort: 8920
name: https
- containerPort: 1900
name: discovery1
protocol: UDP
- containerPort: 7359
name: discovery2
protocol: UDP
volumeMounts:
- name: jellyfin-data
mountPath: /config
subPath: config
- name: jellyfin-data
mountPath: /cache
subPath: cache
- name: dropbox
mountPath: /volume1/dropbox
- name: tv-shows
mountPath: /volume1/tv shows
- name: video
mountPath: /volume1/video
- name: movies
mountPath: /volume1/movies
resources:
requests:
cpu: 500m
memory: 2Gi
volumes:
- name: jellyfin-data
persistentVolumeClaim:
claimName: jellyfin-data
- name: dropbox
nfs:
server: 172.16.18.1
path: /volume1/dropbox
- name: tv-shows
nfs:
server: 172.16.18.1
path: /volume1/tv shows
- name: video
nfs:
server: 172.16.18.1
path: /volume1/video
- name: movies
nfs:
server: 172.16.18.1
path: /volume1/movies
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: jellyfin-data
spec:
storageClassName: longhorn
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 40Gi