diff options
Diffstat (limited to 'f3s/xplayer')
| -rw-r--r-- | f3s/xplayer/helm-chart/Chart.yaml | 6 | ||||
| -rw-r--r-- | f3s/xplayer/helm-chart/templates/deployment.yaml | 81 | ||||
| -rw-r--r-- | f3s/xplayer/helm-chart/templates/ingress.yaml | 20 | ||||
| -rw-r--r-- | f3s/xplayer/helm-chart/templates/persistent-volume.yaml | 55 | ||||
| -rw-r--r-- | f3s/xplayer/helm-chart/templates/service.yaml | 15 |
5 files changed, 177 insertions, 0 deletions
diff --git a/f3s/xplayer/helm-chart/Chart.yaml b/f3s/xplayer/helm-chart/Chart.yaml new file mode 100644 index 0000000..c946ab6 --- /dev/null +++ b/f3s/xplayer/helm-chart/Chart.yaml @@ -0,0 +1,6 @@ +apiVersion: v2 +name: xplayer +description: Extra Player media app instance for f3s +type: application +version: 0.1.0 +appVersion: "df224ef" diff --git a/f3s/xplayer/helm-chart/templates/deployment.yaml b/f3s/xplayer/helm-chart/templates/deployment.yaml new file mode 100644 index 0000000..fb7dd28 --- /dev/null +++ b/f3s/xplayer/helm-chart/templates/deployment.yaml @@ -0,0 +1,81 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: xplayer + namespace: services +spec: + replicas: 1 + # Recreate so the old pod fully terminates before the new one starts — + # avoids NFS-lock races on the hostPath-backed PVC during rolling updates. + strategy: + type: Recreate + selector: + matchLabels: + app: xplayer + template: + metadata: + labels: + app: xplayer + spec: + securityContext: + runAsNonRoot: true + runAsUser: 65534 + runAsGroup: 65534 + fsGroup: 65534 + containers: + - name: xplayer + image: registry.lan.buetow.org:30001/player:df224ef + imagePullPolicy: IfNotPresent + securityContext: + allowPrivilegeEscalation: false + readOnlyRootFilesystem: true + runAsNonRoot: true + runAsUser: 65534 + runAsGroup: 65534 + ports: + - containerPort: 8080 + name: http + env: + - name: PORT + value: "8080" + - name: DB_PATH + value: "/data/media.db" + - name: MEDIA_ROOT + value: "/media" + - name: SECURE_COOKIES + value: "true" + livenessProbe: + httpGet: + path: /healthz + port: http + initialDelaySeconds: 5 + periodSeconds: 10 + readinessProbe: + httpGet: + path: /readyz + port: http + initialDelaySeconds: 3 + periodSeconds: 5 + resources: + requests: + memory: 128Mi + cpu: 100m + limits: + memory: 512Mi + cpu: "1" + volumeMounts: + - name: xplayer-data + mountPath: /data + - name: xplayer-media + mountPath: /media + - name: tmp + mountPath: /tmp + volumes: + - name: xplayer-data + persistentVolumeClaim: + claimName: xplayer-data-pvc + - name: xplayer-media + persistentVolumeClaim: + claimName: xplayer-media-pvc + - name: tmp + emptyDir: {} diff --git a/f3s/xplayer/helm-chart/templates/ingress.yaml b/f3s/xplayer/helm-chart/templates/ingress.yaml new file mode 100644 index 0000000..df8420d --- /dev/null +++ b/f3s/xplayer/helm-chart/templates/ingress.yaml @@ -0,0 +1,20 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: xplayer-ingress + namespace: services + annotations: + spec.ingressClassName: traefik + traefik.ingress.kubernetes.io/router.entrypoints: web +spec: + rules: + - host: xplayer.f3s.buetow.org + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: xplayer-service + port: + number: 8080 diff --git a/f3s/xplayer/helm-chart/templates/persistent-volume.yaml b/f3s/xplayer/helm-chart/templates/persistent-volume.yaml new file mode 100644 index 0000000..c2e09f2 --- /dev/null +++ b/f3s/xplayer/helm-chart/templates/persistent-volume.yaml @@ -0,0 +1,55 @@ +apiVersion: v1 +kind: PersistentVolume +metadata: + name: xplayer-data-pv +spec: + capacity: + storage: 1Gi + volumeMode: Filesystem + accessModes: + - ReadWriteOnce + persistentVolumeReclaimPolicy: Retain + hostPath: + path: /data/nfs/k3svolumes/xplayer/data + type: Directory +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: xplayer-data-pvc + namespace: services +spec: + storageClassName: "" + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 1Gi +--- +apiVersion: v1 +kind: PersistentVolume +metadata: + name: xplayer-media-pv +spec: + capacity: + storage: 10Gi + volumeMode: Filesystem + accessModes: + - ReadWriteOnce + persistentVolumeReclaimPolicy: Retain + hostPath: + path: /data/nfs/k3svolumes/xplayer/media + type: Directory +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: xplayer-media-pvc + namespace: services +spec: + storageClassName: "" + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 10Gi diff --git a/f3s/xplayer/helm-chart/templates/service.yaml b/f3s/xplayer/helm-chart/templates/service.yaml new file mode 100644 index 0000000..0be2875 --- /dev/null +++ b/f3s/xplayer/helm-chart/templates/service.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + app: xplayer + name: xplayer-service + namespace: services +spec: + ports: + - name: web + port: 8080 + protocol: TCP + targetPort: http + selector: + app: xplayer |
