Files
homelab-v/k8s/apps/media/arr/torrent/deployment.yaml
T

107 lines
2.8 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: torrent
namespace: arr
labels:
app: torrent
spec:
replicas: 1
selector:
matchLabels:
app: torrent
strategy:
type: Recreate
template:
metadata:
namespace: torrent
labels:
app: torrent
spec:
nodeSelector:
topology.kubernetes.io/zone: euclid
securityContext:
runAsNonRoot: true
runAsUser: 2501
runAsGroup: 2501
fsGroup: 2501
fsGroupChangePolicy: Always
seccompProfile:
type: RuntimeDefault
containers:
- name: git-sync-vuetorrent
image: registry.k8s.io/git-sync/git-sync:v4.2.4 # renovate: docker=registry.k8s.io/git-sync/git-sync
securityContext:
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
capabilities:
drop: [ "ALL" ]
args:
- --repo=https://github.com/VueTorrent/VueTorrent
- --root=/tmp/git-sync
- --ref=latest-release
- --period=12h
- --link=/themes/vuetorrent
- --max-failures=10
- -v=2
resources:
requests:
cpu: 10m
memory: 16Mi
limits:
cpu: 2000m
memory: 256Mi
volumeMounts:
- name: themes
mountPath: /themes
- name: tmp
mountPath: /tmp
- name: torrent
image: ghcr.io/onedr0p/qbittorrent:4.6.6 # renovate: docker=ghcr.io/onedr0p/qbittorrent
securityContext:
allowPrivilegeEscalation: false
readOnlyRootFilesystem: true
capabilities:
drop: [ "ALL" ]
ports:
- name: http
containerPort: 8080
- name: tcp
containerPort: 10011
protocol: TCP
- name: udp
containerPort: 10011
protocol: UDP
envFrom:
- configMapRef:
name: common-env
optional: true
resources:
requests:
cpu: 100m
memory: 1.5Gi
limits:
cpu: 2000m
memory: 8Gi
volumeMounts:
- name: torrent-config
mountPath: /config
- name: tmp
mountPath: /tmp
- name: themes
mountPath: /themes
- name: data
mountPath: /app/data
volumes:
- name: torrent-config
persistentVolumeClaim:
claimName: torrent-config
- name: tmp
emptyDir: { }
- name: themes
emptyDir: { }
- name: data
nfs:
server: 192.168.1.117
path: /mnt/pool-0/data