--- # 1) Deployment apiVersion: apps/v1 kind: Deployment metadata: name: qbittorrent namespace: default spec: replicas: 1 selector: matchLabels: app: qbittorrent template: metadata: labels: app: qbittorrent spec: affinity: nodeAffinity: preferredDuringSchedulingIgnoredDuringExecution: - weight: 100 preference: matchExpressions: - key: kubernetes.io/hostname operator: In values: - iris containers: - name: qbittorrent image: lscr.io/linuxserver/qbittorrent:5.0.4 imagePullPolicy: Always resources: requests: cpu: 200m memory: 256Mi limits: cpu: 1000m memory: 512Mi ports: - containerPort: 4300 name: webui-port - containerPort: 6881 name: qbit-tcp protocol: TCP - containerPort: 6881 name: qbit-udp protocol: UDP env: - name: PUID value: "1000" - name: PGID value: "1000" - name: TZ value: "Etc/UTC" - name: WEBUI_PORT value: "4300" - name: TORRENTING_PORT value: "6881" volumeMounts: - name: qbittorrent-config mountPath: /config - name: nas-storage mountPath: /nas volumes: - name: qbittorrent-config persistentVolumeClaim: claimName: qbittorrent-config - name: nas-storage nfs: server: 192.168.15.99 path: /export/Storage --- # PVC apiVersion: v1 kind: PersistentVolumeClaim metadata: name: qbittorrent-config namespace: default annotations: nfs.io/storage-path: "qbittorrent-config" spec: storageClassName: "nfs-client" accessModes: - ReadWriteOnce resources: requests: storage: 1Gi --- # 2) Service apiVersion: v1 kind: Service metadata: name: qbittorrent namespace: default spec: type: NodePort selector: app: qbittorrent ports: - port: 4300 targetPort: webui-port name: webui - port: 6881 targetPort: qbit-tcp name: torrent-tcp protocol: TCP - port: 6881 targetPort: qbit-udp name: torrent-udp protocol: UDP --- # 4) Ingress (Traefik) apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: qbittorrent namespace: default annotations: traefik.ingress.kubernetes.io/router.entrypoints: web spec: ingressClassName: nginx rules: - host: qbittorrent.haven http: paths: - path: / pathType: Prefix backend: service: name: qbittorrent port: number: 4300