254 lines
7.4 KiB
YAML
254 lines
7.4 KiB
YAML
# Default values for Jellyfin.
|
|
# This is a YAML-formatted file.
|
|
|
|
# -- Number of Jellyfin replicas to start. Should be left at 1.
|
|
replicaCount: 1
|
|
|
|
# -- Image pull secrets to authenticate with private repositories.
|
|
# See: https://kubernetes.io/docs/tasks/configure-pod-container/pull-image-private-registry/
|
|
imagePullSecrets: []
|
|
|
|
image:
|
|
# -- Container image repository for Jellyfin.
|
|
repository: docker.io/jellyfin/jellyfin
|
|
# -- Jellyfin container image tag. Leave empty to automatically use the Chart's app version.
|
|
tag: "10.11.1"
|
|
# -- Image pull policy (Always, IfNotPresent, or Never).
|
|
pullPolicy: IfNotPresent
|
|
|
|
# -- Override the default name of the chart.
|
|
nameOverride: ""
|
|
# -- Override the default full name of the chart.
|
|
fullnameOverride: ""
|
|
|
|
# -- Service account configuration. See: https://kubernetes.io/docs/concepts/security/service-accounts/
|
|
serviceAccount:
|
|
# -- Specifies whether to create a service account.
|
|
create: true
|
|
# -- Automatically mount API credentials for the service account.
|
|
automount: true
|
|
# -- Annotations for the service account.
|
|
annotations: {}
|
|
# -- Custom name for the service account. If left empty, the name will be autogenerated.
|
|
name: ""
|
|
|
|
# -- Annotations to add to the pod.
|
|
podAnnotations: {}
|
|
# -- Additional labels to add to the pod.
|
|
podLabels: {}
|
|
|
|
# -- Security context for the pod.
|
|
podSecurityContext: {}
|
|
# fsGroup: 2000
|
|
|
|
# -- Security context for the container.
|
|
securityContext: {}
|
|
# capabilities:
|
|
# drop:
|
|
# - ALL
|
|
# readOnlyRootFilesystem: true
|
|
# runAsNonRoot: true
|
|
# runAsUser: 1000
|
|
|
|
# -- Define a custom runtimeClassName for the pod.
|
|
runtimeClassName: ''
|
|
|
|
# -- Define a priorityClassName for the pod.
|
|
priorityClassName: ""
|
|
|
|
# -- Define a dnsConfig. See https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-dns-config
|
|
# Use this to provide a custom DNS resolver configuration
|
|
dnsConfig: {}
|
|
# nameservers:
|
|
# - 192.0.2.1
|
|
# searches:
|
|
# - ns1.svc.cluster-domain.example
|
|
# - my.dns.search.suffix
|
|
# options:
|
|
# - name: ndots
|
|
# value: "2"
|
|
# - name: edns0
|
|
|
|
# -- Define a dnsPolicy. See https://kubernetes.io/docs/concepts/services-networking/dns-pod-service/#pod-s-dns-policy
|
|
dnsPolicy: ""
|
|
|
|
# -- Deployment strategy configuration. See `kubectl explain deployment.spec.strategy`.
|
|
deploymentStrategy:
|
|
type: RollingUpdate
|
|
|
|
# -- Annotations to add to the deployment.
|
|
deploymentAnnotations: {}
|
|
|
|
service:
|
|
# # -- Custom name for the service port
|
|
# name: http
|
|
# -- Service type (ClusterIP, NodePort, or LoadBalancer).
|
|
type: ClusterIP
|
|
# -- Configure dual-stack IP family policy. See: https://kubernetes.io/docs/concepts/services-networking/dual-stack/
|
|
ipFamilyPolicy: ""
|
|
# -- Supported IP families (IPv4, IPv6).
|
|
ipFamilies: []
|
|
# -- Specific IP address for the LoadBalancer.
|
|
loadBalancerIP: ""
|
|
# -- Class of the LoadBalancer.
|
|
loadBalancerClass: ""
|
|
# -- Source ranges allowed to access the LoadBalancer.
|
|
loadBalancerSourceRanges: []
|
|
# -- Port for the Jellyfin service.
|
|
port: 8096
|
|
# -- Name of the port in the service.
|
|
portName: service
|
|
# -- Annotations for the service.
|
|
annotations: {}
|
|
# -- Labels for the service.
|
|
labels: {}
|
|
# -- External traffic policy (Cluster or Local).
|
|
# externalTrafficPolicy: Cluster
|
|
# -- NodePort for the service (if applicable).
|
|
# nodePort:
|
|
|
|
# -- Ingress configuration. See: https://kubernetes.io/docs/concepts/services-networking/ingress/
|
|
ingress:
|
|
enabled: false
|
|
className: ""
|
|
annotations: {}
|
|
# kubernetes.io/ingress.class: nginx
|
|
# kubernetes.io/tls-acme: "true"
|
|
hosts:
|
|
- host: chart-example.local
|
|
paths:
|
|
- path: /
|
|
pathType: ImplementationSpecific
|
|
tls: []
|
|
# - secretName: chart-example-tls
|
|
# hosts:
|
|
# - chart-example.local
|
|
|
|
# -- Resource requests and limits for the Jellyfin container.
|
|
resources: {}
|
|
# limits:
|
|
# cpu: 100m
|
|
# memory: 128Mi
|
|
# requests:
|
|
# cpu: 100m
|
|
# memory: 128Mi
|
|
|
|
# -- Configure liveness probe for Jellyfin.
|
|
livenessProbe:
|
|
initialDelaySeconds: 10
|
|
tcpSocket:
|
|
port: http
|
|
# successThreshold: 1
|
|
# failureThreshold: 3
|
|
# timeoutSeconds: 1
|
|
# periodSeconds: 10
|
|
|
|
# -- Configure readiness probe for Jellyfin.
|
|
readinessProbe:
|
|
initialDelaySeconds: 10
|
|
tcpSocket:
|
|
port: http
|
|
# successThreshold: 1
|
|
# failureThreshold: 3
|
|
# timeoutSeconds: 1
|
|
# periodSeconds: 10
|
|
|
|
# -- Additional volumes to mount in the Jellyfin pod.
|
|
volumes: []
|
|
# - name: foo
|
|
# secret:
|
|
# secretName: mysecret
|
|
# optional: false
|
|
|
|
# -- Additional volume mounts for the Jellyfin container.
|
|
volumeMounts: []
|
|
# - name: foo
|
|
# mountPath: "/etc/foo"
|
|
# readOnly: true
|
|
|
|
# -- Node selector for pod scheduling.
|
|
nodeSelector: {}
|
|
|
|
# -- Tolerations for pod scheduling.
|
|
tolerations: []
|
|
|
|
# -- Affinity rules for pod scheduling.
|
|
affinity: {}
|
|
|
|
jellyfin:
|
|
# -- Enable DLNA. Requires host network. See: https://jellyfin.org/docs/general/networking/dlna.html
|
|
enableDLNA: false
|
|
# -- Custom command to use as container entrypoint.
|
|
command: []
|
|
# -- Additional arguments for the entrypoint command.
|
|
args: []
|
|
# -- Additional environment variables for the container.
|
|
env: []
|
|
|
|
persistence:
|
|
config:
|
|
# -- set to false to use emptyDir
|
|
enabled: true
|
|
accessMode: ReadWriteOnce
|
|
size: 20Gi
|
|
# -- Custom annotations to be added to the PVC
|
|
annotations: {}
|
|
# -- If undefined (the default) or set to null, no storageClassName spec is set, choosing the default provisioner.
|
|
storageClass: openebs-3-replicas
|
|
## -- Use an existing PVC for this mount
|
|
# existingClaim: ''
|
|
media:
|
|
# -- set to false to use emptyDir
|
|
enabled: true
|
|
# -- Type of volume for media storage (pvc, hostPath, emptyDir). If 'enabled' is false, 'emptyDir' is used regardless of this setting.
|
|
type: pvc
|
|
# -- Path on the host node for media storage, only used if type is 'hostPath'.
|
|
hostPath: ""
|
|
# -- PVC specific settings, only used if type is 'pvc'.
|
|
accessMode: ReadWriteMany
|
|
size: 1Gi
|
|
# -- Custom annotations to be added to the PVC
|
|
annotations: {}
|
|
# -- If undefined (the default) or set to null, no storageClassName spec is set, choosing the default provisioner.
|
|
storageClass: nfs-storage
|
|
## -- Use an existing PVC for this mount
|
|
# existingClaim: ''
|
|
|
|
# -- Configuration for metrics collection and monitoring
|
|
metrics:
|
|
# -- Enable or disable metrics collection
|
|
enabled: false
|
|
# -- Configuration for the Prometheus ServiceMonitor
|
|
serviceMonitor:
|
|
# -- Enable or disable the creation of a ServiceMonitor resource
|
|
enabled: false
|
|
# -- Namespace where the ServiceMonitor resource should be created. Defaults to Release.Namespace
|
|
namespace: ''
|
|
# -- Labels to add to the ServiceMonitor resource
|
|
labels: {}
|
|
# -- Interval at which metrics should be scraped
|
|
interval: 30s
|
|
# -- Timeout for scraping metrics
|
|
scrapeTimeout: 30s
|
|
# -- Path to scrape for metrics
|
|
path: /metrics
|
|
# -- Port to scrape for metrics
|
|
port: 8096
|
|
# -- Scheme to use for scraping metrics (http or https)
|
|
scheme: http
|
|
# -- TLS configuration for scraping metrics
|
|
tlsConfig: {}
|
|
# -- Relabeling rules for the scraped metrics
|
|
relabelings: []
|
|
# -- Relabeling rules for the metrics before ingestion
|
|
metricRelabelings: []
|
|
# -- Target labels to add to the scraped metrics
|
|
targetLabels: []
|
|
|
|
# -- additional init containers to run inside the pod.
|
|
extraInitContainers: []
|
|
|
|
# -- additional sidecar containers to run inside the pod.
|
|
extraContainers: []
|
|
|