mirror of
https://github.com/zoriya/snow.git
synced 2025-12-06 07:16:19 +00:00
wip: Add transmission
This commit is contained in:
@@ -53,12 +53,32 @@ parameters:
|
||||
poolname: tank
|
||||
provisioner: zfs.csi.openebs.io
|
||||
---
|
||||
apiVersion: storage.k8s.io/v1
|
||||
kind: StorageClass
|
||||
apiVersion: zfs.openebs.io/v1
|
||||
kind: ZFSVolume
|
||||
metadata:
|
||||
name: openebs-zfs-ocean
|
||||
parameters:
|
||||
compression: zstd
|
||||
fstype: zfs
|
||||
poolname: ocean
|
||||
provisioner: zfs.csi.openebs.io
|
||||
name: downloads
|
||||
namespace: openebs
|
||||
spec:
|
||||
capacity: 16Ti
|
||||
fsType: zfs
|
||||
ownerNodeID: kadan
|
||||
poolName: ocean
|
||||
volumeType: DATASET
|
||||
shared: "yes"
|
||||
status:
|
||||
state: Ready
|
||||
---
|
||||
apiVersion: zfs.openebs.io/v1
|
||||
kind: ZFSVolume
|
||||
metadata:
|
||||
name: medias
|
||||
namespace: openebs
|
||||
spec:
|
||||
capacity: 16Ti
|
||||
fsType: zfs
|
||||
ownerNodeID: kadan
|
||||
poolName: ocean
|
||||
volumeType: DATASET
|
||||
shared: "yes"
|
||||
status:
|
||||
state: Ready
|
||||
|
||||
@@ -17,4 +17,4 @@ spec:
|
||||
source:
|
||||
repoURL: https://github.com/zoriya/snow
|
||||
targetRevision: HEAD
|
||||
path: apps/transmission
|
||||
path: charts/transmission
|
||||
|
||||
@@ -5,20 +5,57 @@ metadata:
|
||||
spec:
|
||||
template:
|
||||
spec:
|
||||
securityContext:
|
||||
fsGroup: 1001
|
||||
runAsUser: 1001
|
||||
runAsGroup: 1001
|
||||
runAsNonRoot: true
|
||||
fsGroupChangePolicy: OnRootMismatch
|
||||
containers:
|
||||
- name: transmission
|
||||
image: ghcr.io/home-operations/transmission@4.0.6
|
||||
env:
|
||||
- TRANSMISSION__UMASK: "002"
|
||||
- TRANSMISSION__INCOMPLETE-DIR-ENABLED: false
|
||||
- TRANSMISSION__DOWNLOAD-DIR: "/medias/downloads"
|
||||
- TRANSMISSION__DOWNLOAD-QUEUE-ENABLED: false
|
||||
- TRANSMISSION__RENAME-PARTIAL-FILES: false
|
||||
- TRANSMISSION__TRASH-CAN-ENABLED: false
|
||||
- TRANSMISSION__SCRIPT-TORRENT-ADDED-ENABLED: true
|
||||
- TRANSMISSION__SCRIPT-TORRENT-ADDED-FILENAME: "scripts/guesspath"
|
||||
volumeMounts:
|
||||
- name: medias
|
||||
mountPath: /medias
|
||||
volumes:
|
||||
- name: transmission
|
||||
image: ghcr.io/home-operations/transmission:4.0.6
|
||||
env:
|
||||
- name: TRANSMISSION__UMASK
|
||||
value: "002"
|
||||
- name: TRANSMISSION__INCOMPLETE_DIR_ENABLED
|
||||
value: "false"
|
||||
- name: TRANSMISSION__DOWNLOAD_DIR
|
||||
value: "/downloads"
|
||||
- name: TRANSMISSION__DOWNLOAD_QUEUE_ENABLED
|
||||
value: "false"
|
||||
- name: TRANSMISSION__RENAME_PARTIAL_FILES
|
||||
value: "false"
|
||||
- name: TRANSMISSION__TRASH_CAN_ENABLED
|
||||
value: "false"
|
||||
- name: TRANSMISSION__SCRIPT_TORRENT_ADDED_ENABLED
|
||||
value: "true"
|
||||
# - name: TRANSMISSION__SCRIPT_TORRENT_ADDED_FILENAME
|
||||
# value: "scripts/guesspath"
|
||||
- name: TRANSMISSION__RPC_PORT
|
||||
value: "9091"
|
||||
- name: TRANSMISSION__PEER_PORT
|
||||
value: "27071"
|
||||
volumeMounts:
|
||||
- name: config
|
||||
mountPath: /config
|
||||
- name: downloads
|
||||
mountPath: /downloads
|
||||
- name: medias
|
||||
mountPath: /medias
|
||||
- name: flood
|
||||
image: jesec/flood:4.9.5
|
||||
volumeMounts:
|
||||
- name: downloads
|
||||
mountPath: /downloads
|
||||
- name: medias
|
||||
mountPath: /medias
|
||||
volumes:
|
||||
- name: config
|
||||
persistentVolumeClaim:
|
||||
claimName: config
|
||||
- name: medias
|
||||
persistentVolumeClaim:
|
||||
claimName: medias
|
||||
- name: downloads
|
||||
persistentVolumeClaim:
|
||||
claimName: downloads
|
||||
|
||||
14
charts/transmission/kustomization.yaml
Normal file
14
charts/transmission/kustomization.yaml
Normal file
@@ -0,0 +1,14 @@
|
||||
apiVersion: kustomize.config.k8s.io/v1beta1
|
||||
kind: Kustomization
|
||||
|
||||
labels:
|
||||
- includeSelectors: true
|
||||
pairs:
|
||||
app.kubernetes.io/name: transmission
|
||||
|
||||
resources:
|
||||
- ./deployment.yaml
|
||||
- ./service.yaml
|
||||
- ./pv-downloads.yaml
|
||||
- ./pv-medias.yaml
|
||||
- ./pv-config.yaml
|
||||
10
charts/transmission/pv-config.yaml
Normal file
10
charts/transmission/pv-config.yaml
Normal file
@@ -0,0 +1,10 @@
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: config
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 512Mi
|
||||
29
charts/transmission/pv-downloads.yaml
Normal file
29
charts/transmission/pv-downloads.yaml
Normal file
@@ -0,0 +1,29 @@
|
||||
apiVersion: v1
|
||||
kind: PersistentVolume
|
||||
metadata:
|
||||
name: transmission-downloads
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
capacity:
|
||||
storage: 1Ti
|
||||
csi:
|
||||
driver: zfs.csi.openebs.io
|
||||
fsType: zfs
|
||||
volumeAttributes:
|
||||
openebs.io/poolname: ocean
|
||||
volumeHandle: "downloads"
|
||||
persistentVolumeReclaimPolicy: Retain
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: downloads
|
||||
spec:
|
||||
storageClassName: ""
|
||||
volumeName: transmission-downloads
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 1Ti
|
||||
29
charts/transmission/pv-medias.yaml
Normal file
29
charts/transmission/pv-medias.yaml
Normal file
@@ -0,0 +1,29 @@
|
||||
apiVersion: v1
|
||||
kind: PersistentVolume
|
||||
metadata:
|
||||
name: transmission-medias
|
||||
spec:
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
capacity:
|
||||
storage: 200Ti
|
||||
csi:
|
||||
driver: zfs.csi.openebs.io
|
||||
fsType: zfs
|
||||
volumeAttributes:
|
||||
openebs.io/poolname: ocean
|
||||
volumeHandle: "medias"
|
||||
persistentVolumeReclaimPolicy: Retain
|
||||
---
|
||||
apiVersion: v1
|
||||
kind: PersistentVolumeClaim
|
||||
metadata:
|
||||
name: medias
|
||||
spec:
|
||||
storageClassName: ""
|
||||
volumeName: transmission-medias
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 200Ti
|
||||
20
charts/transmission/service.yaml
Normal file
20
charts/transmission/service.yaml
Normal file
@@ -0,0 +1,20 @@
|
||||
apiVersion: v1
|
||||
kind: Service
|
||||
metadata:
|
||||
name: transmission
|
||||
spec:
|
||||
type: ClusterIP
|
||||
ports:
|
||||
- name: rpc
|
||||
port: 9091
|
||||
targetPort: 9091
|
||||
- name: bittorrent-tcp
|
||||
port: 27071
|
||||
targetPort: 27071
|
||||
- name: utptcp
|
||||
port: 51413
|
||||
targetPort: 51413
|
||||
- name: utpudp
|
||||
port: 51413
|
||||
protocol: UDP
|
||||
targetPort: 51413
|
||||
Reference in New Issue
Block a user