--- apiVersion: apps/v1 kind: Deployment metadata: name: transmission labels: app: transmission spec: replicas: 1 selector: matchLabels: app: transmission strategy: type: RollingUpdate template: metadata: labels: app: transmission spec: affinity: nodeAffinity: requiredDuringSchedulingIgnoredDuringExecution: nodeSelectorTerms: - matchExpressions: - key: kubernetes.io/arch operator: In values: - arm64 containers: - name: transmission image: haugene/transmission-openvpn env: - name: CREATE_TUN_DEVICE value: "true" - name: OPENVPN_PROVIDER value: "PIA" - name: OPENVPN_CONFIG value: "ca_ontario" - name: OPENVPN_OPTS value: "--inactive 3600 --ping 10 --ping-exit 60" - name: WEBPROXY_ENABLED value: "false" - name: LOCAL_NETWORK value: "192.168.20.0/24" - name: TRANSMISSION_RATIO_LIMIT value: "1" - name: TRANSMISSION_RATIO_LIMIT_ENABLED value: "true" - name: TRANSMISSION_RPC_USERNAME value: "transmission" - name: TRANSMISSION_RPC_PASSWORD value: "transmission" - name: TRANSMISSION_RPC_AUTHENTICATION_REQUIRED value: "true" - name: TRANSMISSION_RPC_WHITELIST_ENABLED value: "false" - name: TRANSMISSION_RPC_HOST_WHITELIST_ENABLED value: "false" - name: TRANSMISSION_START_ADDED_TORRENTS value: "false" - name: TZ value: "America/Toronto" - name: OPENVPN_USERNAME valueFrom: secretKeyRef: name: openvpn-pass key: OPENVPN_USERNAME - name: OPENVPN_PASSWORD valueFrom: secretKeyRef: name: openvpn-pass key: OPENVPN_PASSWORD ports: - containerPort: 9091 volumeMounts: - name: transmission-data mountPath: /data - name: tz-config mountPath: /etc/localtime securityContext: capabilities: add: - NET_ADMIN dnsConfig: nameservers: - 8.8.8.8 - 8.8.4.4 volumes: - name: transmission-data persistentVolumeClaim: claimName: transmission-data-pvc - name: tz-config hostPath: path: /usr/share/zoneinfo/EST5EDT # EOF