feat(plex): request intel gpu, use onedr0p plex image, switch to latest app-template chart
This commit is contained in:
parent
924c433a47
commit
4d0b63ca05
|
@ -8,79 +8,129 @@ spec:
|
||||||
chart:
|
chart:
|
||||||
spec:
|
spec:
|
||||||
chart: app-template
|
chart: app-template
|
||||||
version: 1.3.x
|
version: 3.3.2
|
||||||
sourceRef:
|
sourceRef:
|
||||||
kind: HelmRepository
|
kind: HelmRepository
|
||||||
name: bjws-charts
|
name: bjws-charts
|
||||||
namespace: flux-system
|
namespace: flux-system
|
||||||
|
|
||||||
values:
|
values:
|
||||||
|
controllers:
|
||||||
|
plex:
|
||||||
|
containers:
|
||||||
|
app:
|
||||||
image:
|
image:
|
||||||
repository: lscr.io/linuxserver/plex
|
repository: ghcr.io/onedr0p/plex
|
||||||
tag: "1.40.4"
|
tag: 1.40.4.8679-424562606
|
||||||
|
|
||||||
env:
|
env:
|
||||||
TZ: "America/New_York"
|
TZ: America/New_York
|
||||||
PUID: "1000"
|
PLEX_ADVERTISE_URL: https://kube-plex.${SECRET_NEW_DOMAIN}:443,http://192.168.10.71:32400
|
||||||
PGID: "1000"
|
PLEX_NO_AUTH_NETWORKS: 192.168.10.0/24,192.168.20.0/24,10.0.0.0/16,10.43.0.0/16
|
||||||
VERSION: "docker"
|
|
||||||
|
probes:
|
||||||
|
liveness: &probes
|
||||||
|
enabled: true
|
||||||
|
custom: true
|
||||||
|
spec:
|
||||||
|
httpGet:
|
||||||
|
path: /identity
|
||||||
|
port: 32400
|
||||||
|
initialDelaySeconds: 0
|
||||||
|
periodSeconds: 10
|
||||||
|
timeoutSeconds: 1
|
||||||
|
failureThreshold: 3
|
||||||
|
readiness: *probes
|
||||||
|
startup:
|
||||||
|
enabled: true
|
||||||
|
spec:
|
||||||
|
failureThreshold: 30
|
||||||
|
periodSeconds: 10
|
||||||
|
|
||||||
|
securityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
readOnlyRootFilesystem: true
|
||||||
|
capabilities: { drop: ["ALL"] }
|
||||||
|
|
||||||
|
resources:
|
||||||
|
# requests:
|
||||||
|
# cpu: 100m
|
||||||
|
limits:
|
||||||
|
gpu.intel.com/i915: 1
|
||||||
|
memory: 16Gi
|
||||||
|
|
||||||
|
defaultPodOptions:
|
||||||
|
securityContext:
|
||||||
|
runAsNonRoot: true
|
||||||
|
runAsUser: 10000
|
||||||
|
runAsGroup: 10000
|
||||||
|
fsGroup: 10000
|
||||||
|
fsGroupChangePolicy: OnRootMismatch
|
||||||
|
#supplementalGroups: [44, 10000]
|
||||||
|
#seccompProfile: { type: RuntimeDefault }
|
||||||
|
nodeSelector:
|
||||||
|
intel.feature.node.kubernetes.io/gpu: "true"
|
||||||
|
|
||||||
service:
|
service:
|
||||||
main:
|
app:
|
||||||
type: LoadBalancer
|
controller: plex
|
||||||
|
# type: LoadBalancer
|
||||||
annotations:
|
# annotations:
|
||||||
metallb.universe.tf/loadBalancerIPs: "192.168.10.70"
|
# io.cilium/lb-ipam-ips: 192.168.10.71
|
||||||
metallb.universe.tf/allow-shared-ip: "main-ip-192.168.10.70"
|
|
||||||
|
|
||||||
ports:
|
ports:
|
||||||
http:
|
http:
|
||||||
port: 32400
|
port: 32400
|
||||||
targetPort: 32400
|
|
||||||
|
|
||||||
probes:
|
|
||||||
liveness:
|
|
||||||
enabled: false
|
|
||||||
|
|
||||||
ingress:
|
ingress:
|
||||||
main:
|
app:
|
||||||
enabled: true
|
|
||||||
annotations:
|
annotations:
|
||||||
cert-manager.io/cluster-issuer: letsencrypt-production
|
cert-manager.io/cluster-issuer: letsencrypt-production
|
||||||
traefik.ingress.kubernetes.io/router.entrypoints: websecure
|
traefik.ingress.kubernetes.io/router.entrypoints: websecure
|
||||||
|
className: external
|
||||||
hosts:
|
hosts:
|
||||||
- host: &host "plex.${SECRET_NEW_DOMAIN}"
|
- host: "kube-plex.${SECRET_NEW_DOMAIN}"
|
||||||
paths:
|
paths:
|
||||||
- path: /
|
- path: /
|
||||||
pathType: Prefix
|
service:
|
||||||
tls:
|
identifier: app
|
||||||
- hosts:
|
port: http
|
||||||
- *host
|
|
||||||
|
|
||||||
persistence:
|
persistence:
|
||||||
config:
|
config:
|
||||||
enabled: true
|
#existingClaim: plex
|
||||||
type: hostPath
|
# TODO: If setting up Plex for the first time, you'll want to add the globalMounts section
|
||||||
hostPath: /mnt/MainPool/Kubernetes/plex
|
type: persistentVolumeClaim
|
||||||
mountPath: /config
|
size: 15Gi
|
||||||
|
retain: true
|
||||||
|
storageClass: mainpool-hostpath
|
||||||
|
accessMode: ReadWriteOnce
|
||||||
|
globalMounts:
|
||||||
|
- path: /config/Library/Application Support/Plex Media Server
|
||||||
|
|
||||||
storage:
|
# Separate PVC for cache to avoid backing up cache files
|
||||||
enabled: true
|
cache:
|
||||||
|
type: persistentVolumeClaim
|
||||||
|
size: 15Gi
|
||||||
|
retain: true
|
||||||
|
storageClass: mainpool-hostpath
|
||||||
|
accessMode: ReadWriteOnce
|
||||||
|
globalMounts:
|
||||||
|
- path: /config/Library/Application Support/Plex Media Server/Cache
|
||||||
|
|
||||||
|
logs:
|
||||||
|
type: emptyDir
|
||||||
|
globalMounts:
|
||||||
|
- path: /config/Library/Application Support/Plex Media Server/Logs
|
||||||
|
|
||||||
|
tmp:
|
||||||
|
type: emptyDir
|
||||||
|
|
||||||
|
transcode:
|
||||||
|
type: emptyDir
|
||||||
|
|
||||||
|
media:
|
||||||
type: hostPath
|
type: hostPath
|
||||||
hostPath: /mnt/MainPool/Media/Media
|
hostPath: /mnt/MainPool/Media/Media
|
||||||
mountPath: /storage/Media
|
globalMounts:
|
||||||
|
- path: /media
|
||||||
# transcodes:
|
readOnly: true
|
||||||
# enabled: true
|
|
||||||
# type: pvc
|
|
||||||
# accessMode: ReadWriteOnce
|
|
||||||
# size: 40Gi
|
|
||||||
# mountPath: /transcode
|
|
||||||
|
|
||||||
resources:
|
|
||||||
requests:
|
|
||||||
memory: 720Mi
|
|
||||||
|
|
||||||
limits:
|
|
||||||
memory: 5000Mi
|
|
||||||
|
|
Loading…
Reference in New Issue