chore(jellyseerr): move jellyseerr to new organization, setup volsync backups

This commit is contained in:
SeanOMik 2025-04-02 11:30:42 -04:00
parent 9222361e6e
commit 8014f3eb3f
Signed by: SeanOMik
GPG key ID: FEC9E2FC15235964
5 changed files with 116 additions and 64 deletions

View file

@ -0,0 +1,85 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/bjw-s/helm-charts/main/charts/other/app-template/schemas/helmrelease-helm-v2.schema.json
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: jellyseerr
spec:
interval: 5m
chart:
spec:
chart: app-template
version: 3.7.3
sourceRef:
kind: HelmRepository
name: bjws-charts
namespace: flux-system
dependsOn:
- name: jellyfin
values:
controllers:
jellyseerr:
containers:
app:
image:
repository: fallenbagel/jellyseerr
tag: 2.5.1
env:
TZ: America/New_York
probes:
liveness: &probes
enabled: true
custom: true
spec:
httpGet:
path: /
port: &port 5055
initialDelaySeconds: 0
periodSeconds: 10
timeoutSeconds: 1
failureThreshold: 3
readiness: *probes
startup:
enabled: true
spec:
failureThreshold: 30
periodSeconds: 10
resources:
requests:
cpu: 1m
memory: 140Mi
limits:
memory: 300Mi
defaultPodOptions:
securityContext:
runAsUser: 700
runAsGroup: 700
fsGroup: 700
fsGroupChangePolicy: OnRootMismatch
service:
app:
controller: jellyseerr
ports:
http:
port: *port
ingress:
app:
annotations:
cert-manager.io/cluster-issuer: letsencrypt-production
traefik.ingress.kubernetes.io/router.entrypoints: websecure
hosts:
- host: "jellyseerr.${SECRET_NEW_DOMAIN}"
paths:
- path: /
service:
identifier: app
port: http
persistence:
data:
type: persistentVolumeClaim
existingClaim: jellyseerr
globalMounts:
- path: /app/config
cache:
type: emptyDir
globalMounts:
- path: /app/.next/cache

View file

@ -1,4 +1,5 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ./helm-release.yaml
- ../../../../../common/templates/volsync
- ./helm-release.yaml

View file

@ -1,62 +0,0 @@
apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease
metadata:
name: jellyseerr
namespace: media
spec:
interval: 5m
chart:
spec:
chart: app-template
version: 1.3.x
sourceRef:
kind: HelmRepository
name: bjws-charts
namespace: flux-system
values:
image:
repository: fallenbagel/jellyseerr
tag: "2.5.1"
env:
TZ: America/New_York
service:
main:
ports:
http:
port: 5055
probes:
liveness:
enabled: false
ingress:
main:
enabled: true
annotations:
cert-manager.io/cluster-issuer: letsencrypt-production
traefik.ingress.kubernetes.io/router.entrypoints: websecure
hosts:
- host: &host "jellyseerr.${SECRET_NEW_DOMAIN}"
paths:
- path: /
pathType: Prefix
tls:
- hosts:
- *host
persistence:
config:
enabled: true
type: hostPath
hostPath: /mnt/MainPool/Kubernetes/jellyseerr
mountPath: /app/config
resources:
requests:
cpu: 1m
memory: 140Mi
limits:
memory: 300Mi

View file

@ -0,0 +1,28 @@
# yaml-language-server: $schema=https://kubernetes-schemas.pages.dev/kustomize.toolkit.fluxcd.io/kustomization_v1.json
apiVersion: kustomize.toolkit.fluxcd.io/v1
kind: Kustomization
metadata:
name: &app jellyseerr
namespace: flux-system
spec:
timeout: 5m
interval: 10m
targetNamespace: media
path: ./kubernetes/main/apps/media/jellyseerr/app
prune: true
sourceRef:
kind: GitRepository
name: home-cluster
decryption:
provider: sops
secretRef:
name: sops-gpg
postBuild:
substituteFrom:
- kind: ConfigMap
name: cluster-settings
- kind: Secret
name: cluster-secrets
substitute:
APP: *app
VOLSYNC_CAPACITY: 1Gi

View file

@ -6,7 +6,7 @@ resources:
- ./komga/ks.yaml
- ./kavita
- ./jellyfin
- ./jellyseerr
- ./jellyseerr/ks.yaml
- ./audiobookshelf
- ./plex/ks.yaml
- ./tautulli/ks.yaml