add servarr

This commit is contained in:
2024-05-22 15:13:00 -05:00
parent b26b1ba475
commit ebc36941fa
40 changed files with 1456 additions and 0 deletions

View File

@@ -0,0 +1,14 @@
apiVersion: v2
name: qbittorrent
version: 0.0.7
home:
sources:
- https://github.com/qbittorrent/qBittorrent
- https://docs.linuxserver.io/images/docker-qbittorrent/
- https://github.com/qdm12/gluetun
- https://github.com/alexlebens/helm-charts/tree/main/charts/homepage
dependencies:
- name: qbittorrent
version: 0.0.8
repository: http://alexlebens.github.io/helm-charts
appVersion: "version-4.6.3-r0"

View File

@@ -0,0 +1,48 @@
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
name: qbittorrent-auth
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/version: {{ .Chart.AppVersion }}
app.kubernetes.io/component: web
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: admin-password
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /qbittorrent/auth
metadataPolicy: None
property: admin-password
---
apiVersion: external-secrets.io/v1beta1
kind: ExternalSecret
metadata:
name: qbittorrent-wireguard-conf
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/version: {{ .Chart.AppVersion }}
app.kubernetes.io/component: web
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
secretStoreRef:
kind: ClusterSecretStore
name: vault
data:
- secretKey: wg0.conf
remoteRef:
conversionStrategy: Default
decodingStrategy: None
key: /qbittorrent/config
metadataPolicy: None
property: wg0.conf

View File

@@ -0,0 +1,19 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: qbittorrent-nfs-storage
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/version: {{ .Chart.AppVersion }}
app.kubernetes.io/component: storage
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
volumeName: qbittorrent-nfs-storage
storageClassName: nfs-client
accessModes:
- ReadWriteMany
resources:
requests:
storage: 1Gi

View File

@@ -0,0 +1,25 @@
apiVersion: v1
kind: PersistentVolume
metadata:
name: qbittorrent-nfs-storage
namespace: {{ .Release.Namespace }}
labels:
app.kubernetes.io/name: {{ .Release.Name }}
app.kubernetes.io/instance: {{ .Release.Name }}
app.kubernetes.io/version: {{ .Chart.AppVersion }}
app.kubernetes.io/component: storage
app.kubernetes.io/part-of: {{ .Release.Name }}
spec:
persistentVolumeReclaimPolicy: Retain
storageClassName: nfs-client
capacity:
storage: 1Gi
accessModes:
- ReadWriteMany
nfs:
path: {{ .Values.persistence.media.nfsPath }}
server: {{ .Values.persistence.media.nfsServer }}
mountOptions:
- vers=4
- minorversion=1
- noac

View File

@@ -0,0 +1,64 @@
qbittorrent:
global:
persistence:
media:
claimName: qbittorrent-nfs-storage
mountPath: /mnt/store
server:
env:
- name: TZ
value: US/Central
- name: PUID
value: "1000"
- name: PGID
value: "1000"
resources:
requests:
cpu: 100m
memory: 2Gi
limits:
cpu: 2000m
memory: 2Gi
ingress:
enabled: true
className: traefik
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.tls: "true"
cert-manager.io/cluster-issuer: letsencrypt-issuer
host: qbittorrent.alexlebens.net
persistence:
config:
storageClassName: nfs-client
storageSize: 1Gi
gluetun:
enabled: true
env:
- name: VPN_SERVICE_PROVIDER
value: custom
- name: VPN_TYPE
value: wireguard
- name: FIREWALL_OUTBOUND_SUBNETS
value: 192.168.1.0/24,10.244.0.0/16
- name: FIREWALL_INPUT_PORTS
value: 8080,9022
- name: DOT
value: "off"
existingSecretName: qbittorrent-wireguard-conf
metrics:
enabled: true
serviceMonitor:
enabled: true
exporter:
env:
- name: QBITTORRENT_USER
value: admin
- name: QBITTORRENT_PASS
valueFrom:
secretKeyRef:
name: qbittorrent-auth
key: admin-password
persistence:
media:
nfsPath: /volume2/Storage
nfsServer: synologybond.alexlebens.net