-
Notifications
You must be signed in to change notification settings - Fork 0
/
deployment.yaml
140 lines (140 loc) · 3.58 KB
/
deployment.yaml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
apiVersion: apps/v1
kind: Deployment
metadata:
name: bittorrent
annotations:
keel.sh/policy: all
keel.sh/trigger: poll
keel.sh/pollSchedule: "@hourly"
spec:
replicas: 1
selector:
matchLabels:
app: bittorrent
template:
metadata:
labels:
app: bittorrent
spec:
nodeSelector:
kubernetes.io/hostname: obsidiana
securityContext:
sysctls:
- name: net.ipv4.conf.all.src_valid_mark
value: "1"
- name: net.ipv6.conf.all.forwarding
value: "1"
containers:
- name: wireguard
image: lscr.io/linuxserver/wireguard:latest
livenessProbe:
exec:
command:
- /bin/sh
- -c
- "wg show | grep -q transfer"
securityContext:
privileged: true
capabilities:
add: ["NET_ADMIN"]
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: America/Los_Angeles
volumeMounts:
- name: wireguard-config
mountPath: /etc/wireguard/
- name: lib-modules
mountPath: /lib/modules
readOnly: true
- name: transmission
image: lscr.io/linuxserver/transmission:latest
livenessProbe:
httpGet:
path: /
port: 8000
ports:
- containerPort: 9091
protocol: TCP
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: America/Los_Angeles
- name: USER
valueFrom:
secretKeyRef:
name: transmission-secrets
key: USER
- name: PASS
valueFrom:
secretKeyRef:
name: transmission-secrets
key: PASS
- name: PEERPORT
valueFrom:
secretKeyRef:
name: transmission-secrets
key: PEERPORT
volumeMounts:
- name: transmission-config
mountPath: /config
- name: downloads
mountPath: /downloads
- name: bittorrent-nginx
image: nginx:latest
ports:
- containerPort: 80
protocol: TCP
volumeMounts:
- name: nginx-config
mountPath: /etc/nginx/nginx.conf
subPath: nginx.conf
- name: ssl-certs
mountPath: /config/keys
readOnly: true
- name: nginx-logs
mountPath: /var/log/nginx
- name: transmission-liveness-server
image: 10.0.0.238:31320/transmission-liveness-server
ports:
- containerPort: 8000
protocol: TCP
env:
- name: USER
valueFrom:
secretKeyRef:
name: transmission-secrets
key: USER
- name: PASS
valueFrom:
secretKeyRef:
name: transmission-secrets
key: PASS
volumes:
- name: transmission-config
hostPath:
path: /srv/bittorrent/transmission/config
- name: wireguard-config
hostPath:
path: /srv/bittorrent/airvpn
- name: lib-modules
hostPath:
path: /lib/modules
- name: downloads
hostPath:
path: /downloads
- name: nginx-config
configMap:
name: bittorrent-nginx-configmap
- name: ssl-certs
hostPath:
path: /srv/bittorrent/nginx/keys
- name: nginx-logs
hostPath:
path: /srv/bittorrent/nginx/log