--- # yaml-language-server: $schema=https://raw.githubusercontent.com/fluxcd-community/flux2-schemas/main/helmrelease-helm-v2beta1.json apiVersion: helm.toolkit.fluxcd.io/v2beta1 kind: HelmRelease metadata: name: &app media-browser namespace: default spec: interval: 30m chart: spec: chart: app-template version: 2.3.0 sourceRef: kind: HelmRepository name: bjw-s namespace: flux-system maxHistory: 2 install: createNamespace: true remediation: retries: 3 upgrade: cleanupOnFail: true remediation: retries: 3 uninstall: keepHistory: false values: controllers: main: type: statefulset annotations: reloader.stakater.com/auto: "true" containers: main: image: repository: docker.io/filebrowser/filebrowser tag: v2.26.0 env: TZ: "${TIMEZONE}" FB_DATABASE: "/config/filebrowser.db" FB_ROOT: "/mnt/storage" FB_LOG: "stdout" FB_NOAUTH: "true" probes: liveness: &probes enabled: true custom: true spec: httpGet: path: /health port: &port 80 initialDelaySeconds: 0 periodSeconds: 10 timeoutSeconds: 1 failureThreshold: 3 readiness: *probes startup: enabled: false resources: requests: cpu: 10m memory: 50Mi limits: memory: 500Mi statefulset: volumeClaimTemplates: - name: config accessMode: ReadWriteOnce size: 1Gi storageClass: rook-ceph-block globalMounts: - path: /config service: main: ports: http: port: *port ingress: main: enabled: true className: "nginx" annotations: nginx.ingress.kubernetes.io/auth-method: GET nginx.ingress.kubernetes.io/auth-url: http://authelia.default.svc.cluster.local.:8888/api/verify nginx.ingress.kubernetes.io/auth-signin: https://auth.${SECRET_CLUSTER_DOMAIN}?rm=$request_method nginx.ingress.kubernetes.io/auth-response-headers: Remote-User,Remote-Name,Remote-Groups,Remote-Email nginx.ingress.kubernetes.io/auth-snippet: proxy_set_header X-Forwarded-Method $request_method; hajimari.io/icon: mdi:folder-play-outline hosts: - host: &host "{{ .Release.Name }}.${SECRET_CLUSTER_DOMAIN}" paths: - path: / service: name: main port: http tls: - hosts: - *host persistence: music: enabled: true type: nfs server: "${LOCAL_LAN_TRUENAS}" path: /mnt/storage/music globalMounts: - path: /mnt/storage/music photo: enabled: true type: nfs server: "${LOCAL_LAN_TRUENAS}" path: /mnt/storage/photo globalMounts: - path: /mnt/storage/photo video: enabled: true type: nfs server: "${LOCAL_LAN_TRUENAS}" path: /mnt/storage/video globalMounts: - path: /mnt/storage/video