From 8c55a30aae09cddd4b9c0ce31fac898d0b0ad220 Mon Sep 17 00:00:00 2001 From: Fishandchips321 Date: Wed, 15 Apr 2026 16:47:12 +0100 Subject: [PATCH 1/3] feat(jellyfin): Added readme content and jellyfin kube config --- Jellyfin/README.md | 7 ++++++ Jellyfin/deployment.yml | 50 +++++++++++++++++++++++++++++++++++++++++ Jellyfin/ingress.yml | 22 ++++++++++++++++++ Jellyfin/service.yml | 11 +++++++++ 4 files changed, 90 insertions(+) create mode 100644 Jellyfin/deployment.yml create mode 100644 Jellyfin/ingress.yml create mode 100644 Jellyfin/service.yml diff --git a/Jellyfin/README.md b/Jellyfin/README.md index e69de29..6ea3371 100644 --- a/Jellyfin/README.md +++ b/Jellyfin/README.md @@ -0,0 +1,7 @@ +# Jellyfin +Jellyfin is a media center server somewhat like netflix but self-hosted. + +## Using this kubernetes config +In `deployment.yml`, set the media directory host path. This is where you will/have put your media for Jellyfin to serve. + +In `ingress.yml`, set the hostname that users will use to connect to the service. This config assumes you have cert-manager installed on your cluster, so if you want to provide HTTPS another way, feel free to comment out the `spec.tls` section (the annotation shouldn't affect anything, but you can comment it out as well if you want) \ No newline at end of file diff --git a/Jellyfin/deployment.yml b/Jellyfin/deployment.yml new file mode 100644 index 0000000..634a4e7 --- /dev/null +++ b/Jellyfin/deployment.yml @@ -0,0 +1,50 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: jellyfin +spec: + replicas: 1 + selector: + matchLabels: + app: jellyfin + template: + metadata: + labels: + app: jellyfin + spec: + containers: + - name: jellyfin + image: jellyfin/jellyfin:latest + ports: + - containerPort: 8096 + resources: + requests: + cpu: "500m" + memory: "256Mi" + limits: + cpu: "2" + memory: "2Gi" + volumeMounts: + - name: config + mountPath: /config + - name: media + mountPath: /media + volumes: + - name: config + persistentVolumeClaim: + claimName: jellyfin-config-pvc + - name: media + hostPath: + path: + type: Directory +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: jellyfin-config-pvc +spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 128Mi diff --git a/Jellyfin/ingress.yml b/Jellyfin/ingress.yml new file mode 100644 index 0000000..db5c0d6 --- /dev/null +++ b/Jellyfin/ingress.yml @@ -0,0 +1,22 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: jellyfin-ingress + annotations: + cert-manager.io/cluster-issuer: "letsencrypt-production" +spec: + tls: + - hosts: + - + secretName: jellyfin-tls + rules: + - host: + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: jellyfin + port: + number: 80 diff --git a/Jellyfin/service.yml b/Jellyfin/service.yml new file mode 100644 index 0000000..b059bcd --- /dev/null +++ b/Jellyfin/service.yml @@ -0,0 +1,11 @@ +apiVersion: v1 +kind: Service +metadata: + name: jellyfin +spec: + selector: + app: jellyfin + ports: + - protocol: TCP + port: 80 + targetPort: 8096 From 21f10a038b9c921c687fff4e6cf07a2bd8ebb501 Mon Sep 17 00:00:00 2001 From: Fishandchips321 Date: Wed, 15 Apr 2026 16:50:55 +0100 Subject: [PATCH 2/3] feat(flaresolverr): Added readme content and config files --- FlareSolverr/README.md | 5 +++++ FlareSolverr/deployment.yml | 22 ++++++++++++++++++++++ FlareSolverr/service.yml | 10 ++++++++++ 3 files changed, 37 insertions(+) create mode 100644 FlareSolverr/deployment.yml create mode 100644 FlareSolverr/service.yml diff --git a/FlareSolverr/README.md b/FlareSolverr/README.md index e69de29..43e007a 100644 --- a/FlareSolverr/README.md +++ b/FlareSolverr/README.md @@ -0,0 +1,5 @@ +# Flaresolverr +FlareSolverr helps other services solve cloudflare captchas. This is useful for services such as prowlarr that may need to get past captchas on certain sites. + +## How to use this kubernetes config +No changes are needed, just deploy where you need it. \ No newline at end of file diff --git a/FlareSolverr/deployment.yml b/FlareSolverr/deployment.yml new file mode 100644 index 0000000..2c1c624 --- /dev/null +++ b/FlareSolverr/deployment.yml @@ -0,0 +1,22 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: flaresolverr +spec: + selector: + matchLabels: + app: flaresolverr + template: + metadata: + labels: + app: flaresolverr + spec: + containers: + - name: flaresolverr + image: ghcr.io/flaresolverr/flaresolverr:latest + resources: + limits: + memory: "512Mi" + cpu: "500m" + ports: + - containerPort: 8191 diff --git a/FlareSolverr/service.yml b/FlareSolverr/service.yml new file mode 100644 index 0000000..a9804ec --- /dev/null +++ b/FlareSolverr/service.yml @@ -0,0 +1,10 @@ +apiVersion: v1 +kind: Service +metadata: + name: flaresolverr +spec: + selector: + app: flaresolverr + ports: + - port: 8191 + targetPort: 8191 From 0adaa38c8cf5afcd0a1031602395fab47b56d6ea Mon Sep 17 00:00:00 2001 From: Fishandchips321 Date: Wed, 15 Apr 2026 16:51:48 +0100 Subject: [PATCH 3/3] feat(flaresolverr): Ammended readme to clarify lack of ingress config --- FlareSolverr/README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FlareSolverr/README.md b/FlareSolverr/README.md index 43e007a..c1bffde 100644 --- a/FlareSolverr/README.md +++ b/FlareSolverr/README.md @@ -2,4 +2,4 @@ FlareSolverr helps other services solve cloudflare captchas. This is useful for services such as prowlarr that may need to get past captchas on certain sites. ## How to use this kubernetes config -No changes are needed, just deploy where you need it. \ No newline at end of file +No changes are needed, just deploy where you need it. This doesn't come with an ingress as it assumes other kubernetes services inside your cluster will be the only things needing to access it. \ No newline at end of file