Compare commits

..

4 Commits

Author SHA1 Message Date
gitea-admin 92b7649d37 feat: add Transmission with Gluetun VPN sidecar
Validate Manifests / validate (pull_request) Has been cancelled
2026-05-24 14:14:53 +00:00
gitea-admin 4ceb90a24c feat: add Transmission with Gluetun VPN sidecar 2026-05-24 14:14:53 +00:00
gitea-admin 9b5eaf9cd9 feat: add Transmission with Gluetun VPN sidecar 2026-05-24 14:14:53 +00:00
gitea-admin 2f4244985a feat: add Transmission with Gluetun VPN sidecar 2026-05-24 14:14:52 +00:00
5 changed files with 83 additions and 42 deletions
@@ -1,7 +0,0 @@
apiVersion: v1
kind: ConfigMap
metadata:
name: transmission-config
namespace: media
data:
peer-port: "0"
+59 -31
View File
@@ -15,34 +15,42 @@ spec:
labels: labels:
app: transmission app: transmission
spec: spec:
securityContext:
capabilities:
add:
- NET_ADMIN
containers: containers:
- name: gluetun - name: gluetun
image: ghcr.io/qmcgaw/gluetun:v3.40.0 image: qmcgaw/gluetun:latest
env: env:
- name: OPENVPN_PROVIDER - name: VPN_SERVICE_PROVIDER
value: "PROTONVPN" value: protonvpn
- name: OPENVPN_USERNAME - name: REGION
value: "New York"
- name: OPENVPN_USER
valueFrom: valueFrom:
secretKeyRef: secretKeyRef:
name: transmission-vpn-secret name: transmission-vpn-secret
key: username key: VPN_USERNAME
- name: OPENVPN_PASSWORD - name: OPENVPN_PASSWORD
valueFrom: valueFrom:
secretKeyRef: secretKeyRef:
name: transmission-vpn-secret name: transmission-vpn-secret
key: password key: VPN_PASSWORD
- name: SERVER_COUNTRIES - name: WIREGUARD_PRIVATE_KEY
value: "US" valueFrom:
- name: FIREWALL_ENABLED secretKeyRef:
value: "off" name: transmission-vpn-secret
- name: DOT_ENABLED key: WIREGUARD_PRIVATE_KEY
- name: FIREWALL_OUTBOUND_SUBNET
value: ""
- name: UPNP_ENABLED
value: "true"
- name: DOT
value: "true" value: "true"
ports:
- name: http
containerPort: 8000
volumeMounts: volumeMounts:
- name: config - name: config
mountPath: /config mountPath: /gluetun
- name: transmission - name: transmission
image: lscr.io/linuxserver/transmission:latest image: lscr.io/linuxserver/transmission:latest
env: env:
@@ -53,33 +61,53 @@ spec:
- name: TZ - name: TZ
value: "America/New_York" value: "America/New_York"
- name: USER - name: USER
value: "admin"
- name: PASS
value: "admin"
- name: TRANSMISSION_WEB_HOME
value: "/combui"
- name: PEER_PORT
valueFrom: valueFrom:
configMapKeyRef: secretKeyRef:
name: transmission-config name: transmission-vpn-secret
key: peer-port 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: ports:
- name: http - containerPort: 9091
containerPort: 9091 name: http
- name: peer - containerPort: 51413
containerPort: 0
protocol: TCP protocol: TCP
- name: peer-udp name: peer-tcp
containerPort: 0 - containerPort: 51413
protocol: UDP protocol: UDP
name: peer-udp
volumeMounts: volumeMounts:
- name: config - name: config
mountPath: /config mountPath: /config
- name: media
mountPath: /downloads
- name: downloads - name: downloads
mountPath: /downloads mountPath: /downloads
- name: watch
mountPath: /watch
volumes: volumes:
- name: config - name: config
emptyDir: {} persistentVolumeClaim:
claimName: transmission-config
- name: media
persistentVolumeClaim:
claimName: media-data
- name: downloads - name: downloads
persistentVolumeClaim: persistentVolumeClaim:
claimName: media-data claimName: media-data
- name: watch
persistentVolumeClaim:
claimName: media-data
+1 -2
View File
@@ -5,7 +5,6 @@ metadata:
namespace: media namespace: media
annotations: annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod cert-manager.io/cluster-issuer: letsencrypt-prod
nginx.ingress.kubernetes.io/ssl-redirect: "true"
spec: spec:
rules: rules:
- host: transmission.khalis.corp - host: transmission.khalis.corp
@@ -17,4 +16,4 @@ spec:
service: service:
name: transmission name: transmission
port: port:
name: http number: 9091
+12
View File
@@ -0,0 +1,12 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: transmission-config
namespace: media
spec:
accessModes:
- ReadWriteOnce
storageClassName: longhorn
resources:
requests:
storage: 10Gi
+11 -2
View File
@@ -7,7 +7,16 @@ spec:
selector: selector:
app: transmission app: transmission
ports: ports:
- name: http - protocol: TCP
port: 9091 port: 9091
targetPort: http targetPort: 9091
name: http
- protocol: TCP
port: 51413
targetPort: 51413
name: peer-tcp
- protocol: UDP
port: 51413
targetPort: 51413
name: peer-udp
type: ClusterIP type: ClusterIP