Merge pull request #3 from aggarwalakshun/add-qbittorrent

add qbittorrent manifests
This commit is contained in:
aggarwalakshun
2025-12-27 21:37:19 +05:30
committed by GitHub
4 changed files with 116 additions and 0 deletions

View File

@@ -0,0 +1,27 @@
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: qbittorrent-ingress
namespace: arr-stack
annotations:
cert-manager.io/cluster-issuer: letsencrypt-cloudflare
traefik.ingress.kubernetes.io/router.middlewares: tools-authelia@kubernetescrd
traefik.ingress.kubernetes.io/router.entrypoints: websecure
spec:
ingressClassName: traefik
tls:
- hosts:
- qbittorrent.akshun-lab.cc
secretName: qbittorrent-tls
rules:
- host: qbittorrent.akshun-lab.cc
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: qbittorrent-service
port:
number: 8080

View File

@@ -0,0 +1,14 @@
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: qbittorrent-longhorn
namespace: arr-stack
spec:
accessModes:
- ReadWriteOnce
volumeMode: Filesystem
resources:
requests:
storage: 1Gi
storageClassName: longhorn

View File

@@ -0,0 +1,12 @@
---
apiVersion: v1
kind: Service
metadata:
name: qbittorrent-service
namespace: arr-stack
spec:
selector:
app: qbittorrent
ports:
- port: 8080
targetPort: 8080

View File

@@ -0,0 +1,63 @@
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: qbittorrent
namespace: arr-stack
spec:
strategy:
type: Recreate
replicas: 1
selector:
matchLabels:
app: qbittorrent
template:
metadata:
labels:
app: qbittorrent
spec:
initContainers:
- name: gluetun
image: qmcgaw/gluetun:v3.41.0
restartPolicy: Always
securityContext:
capabilities:
add:
- NET_ADMIN
envFrom:
- configMapRef:
name: gluetun-config
env:
- name: OPENVPN_PASSWORD
valueFrom:
secretKeyRef:
name: openvpn-secrets
key: OPENVPN_PASSWORD
- name: OPENVPN_USER
valueFrom:
secretKeyRef:
name: openvpn-secrets
key: OPENVPN_USER
containers:
- name: qbittorrent
image: linuxserver/qbittorrent:5.1.4
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: "Asia/Kolkata"
volumeMounts:
- name: downloads
mountPath: /downloads
- name: config
mountPath: /config
volumes:
- name: config
persistentVolumeClaim:
claimName: qbittorrent-longhorn
- name: downloads
nfs:
server: 192.168.1.4
path: /merge/downloads