apiVersion: apps/v1 kind: Deployment metadata: name: transmission namespace: media labels: app: transmission spec: replicas: 1 selector: matchLabels: app: transmission template: metadata: labels: app: transmission spec: securityContext: capabilities: add: - NET_ADMIN containers: - name: gluetun image: qmcgaw/gluetun:latest env: - name: VPN_SERVICE_PROVIDER value: protonvpn - name: REGION value: "New York" - name: OPENVPN_USER valueFrom: secretKeyRef: name: transmission-vpn-secret key: VPN_USERNAME - name: OPENVPN_PASSWORD valueFrom: secretKeyRef: name: transmission-vpn-secret key: VPN_PASSWORD - name: WIREGUARD_PRIVATE_KEY valueFrom: secretKeyRef: name: transmission-vpn-secret key: WIREGUARD_PRIVATE_KEY - name: FIREWALL_OUTBOUND_SUBNET value: "" - name: UPNP_ENABLED value: "true" - name: DOT value: "true" volumeMounts: - name: config mountPath: /gluetun - name: transmission image: lscr.io/linuxserver/transmission:latest env: - name: PUID value: "1000" - name: PGID value: "1000" - name: TZ value: "America/New_York" - name: USER valueFrom: secretKeyRef: name: transmission-vpn-secret key: TRANS_USERNAME - name: PASS valueFrom: secretKeyRef: name: transmission-vpn-secret key: TRANS_PASSWORD - name: WHITELIST value: "*" - name: HOST_WHITELIST value: "transmission.khalis.corp" - name: PEER_PORT value: "51413" - name: NVM_CONFIGDIR value: "/config" - name: NVM_DATAROOT value: "/downloads" ports: - containerPort: 9091 name: http - containerPort: 51413 protocol: TCP name: peer-tcp - containerPort: 51413 protocol: UDP name: peer-udp volumeMounts: - name: config mountPath: /config - name: media mountPath: /downloads - name: downloads mountPath: /downloads - name: watch mountPath: /watch volumes: - name: config persistentVolumeClaim: claimName: transmission-config - name: media persistentVolumeClaim: claimName: media-data - name: downloads persistentVolumeClaim: claimName: media-data - name: watch persistentVolumeClaim: claimName: media-data