liveliness probes for a bunch of stuff + tdarr implementation and
soulseek (slskd+soularr) integration
This commit is contained in:
1
.gitignore
vendored
1
.gitignore
vendored
@@ -1 +1,2 @@
|
|||||||
|
.secret/*
|
||||||
*/.secret
|
*/.secret
|
||||||
|
@@ -17,14 +17,22 @@ spec:
|
|||||||
volumes:
|
volumes:
|
||||||
- name: nfs-vol
|
- name: nfs-vol
|
||||||
nfs:
|
nfs:
|
||||||
server: 192.168.0.114
|
server: 192.168.0.99
|
||||||
path: /mnt/test1/media/
|
path: /mnt/test1/media/
|
||||||
- name: config
|
- name: config
|
||||||
persistentVolumeClaim:
|
nfs:
|
||||||
claimName: config-bazarr
|
server: 192.168.0.99
|
||||||
|
path: /mnt/test1/media/config/bazarr
|
||||||
containers:
|
containers:
|
||||||
- name: bazarr
|
- name: bazarr
|
||||||
image: ghcr.io/hotio/bazarr:latest
|
image: ghcr.io/hotio/bazarr:latest
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /
|
||||||
|
port: 6767
|
||||||
|
initialDelaySeconds: 60
|
||||||
|
failureThreshold: 6
|
||||||
|
periodSeconds: 10
|
||||||
env:
|
env:
|
||||||
- name: PUID
|
- name: PUID
|
||||||
value: "1000"
|
value: "1000"
|
||||||
|
@@ -17,6 +17,13 @@ spec:
|
|||||||
containers:
|
containers:
|
||||||
- name: flaresolverr
|
- name: flaresolverr
|
||||||
image: ghcr.io/flaresolverr/flaresolverr:latest
|
image: ghcr.io/flaresolverr/flaresolverr:latest
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /
|
||||||
|
port: 8191
|
||||||
|
initialDelaySeconds: 60
|
||||||
|
failureThreshold: 6
|
||||||
|
periodSeconds: 10
|
||||||
env:
|
env:
|
||||||
- name: LOG_LEVEL
|
- name: LOG_LEVEL
|
||||||
value: info
|
value: info
|
||||||
|
@@ -1,9 +1,40 @@
|
|||||||
|
---
|
||||||
apiVersion: networking.k8s.io/v1
|
apiVersion: networking.k8s.io/v1
|
||||||
kind: Ingress
|
kind: Ingress
|
||||||
metadata:
|
metadata:
|
||||||
name: main-ingress
|
name: main-ingress
|
||||||
spec:
|
spec:
|
||||||
rules:
|
rules:
|
||||||
|
- host: "truenas.local"
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: svc-truenas
|
||||||
|
port:
|
||||||
|
number: 443
|
||||||
|
- host: "tdarr.local"
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: svc-tdarr
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
|
- host: "slskd.local"
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: svc-slskd
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
- host: "bazarr.local"
|
- host: "bazarr.local"
|
||||||
http:
|
http:
|
||||||
paths:
|
paths:
|
||||||
|
@@ -17,13 +17,21 @@ spec:
|
|||||||
volumes:
|
volumes:
|
||||||
- name: nfs-vol
|
- name: nfs-vol
|
||||||
nfs:
|
nfs:
|
||||||
server: 192.168.0.114
|
server: 192.168.0.99
|
||||||
path: /mnt/test1/media/
|
path: /mnt/test1/media/
|
||||||
- name: config
|
- name: config
|
||||||
persistentVolumeClaim:
|
nfs:
|
||||||
claimName: config-lidarr
|
server: 192.168.0.99
|
||||||
|
path: /mnt/test1/media/config/lidarr
|
||||||
containers:
|
containers:
|
||||||
- name: lidarr
|
- name: lidarr
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /ping
|
||||||
|
port: 8686
|
||||||
|
initialDelaySeconds: 60
|
||||||
|
failureThreshold: 6
|
||||||
|
periodSeconds: 10
|
||||||
image: ghcr.io/hotio/lidarr:latest
|
image: ghcr.io/hotio/lidarr:latest
|
||||||
env:
|
env:
|
||||||
- name: PUID
|
- name: PUID
|
||||||
|
@@ -17,17 +17,23 @@ spec:
|
|||||||
volumes:
|
volumes:
|
||||||
- name: nfs-vol
|
- name: nfs-vol
|
||||||
nfs:
|
nfs:
|
||||||
server: 192.168.0.114
|
server: 192.168.0.99
|
||||||
path: /mnt/test1/media/
|
path: /mnt/test1/media/
|
||||||
- name: transcode
|
|
||||||
persistentVolumeClaim:
|
|
||||||
claimName: transcode-plex
|
|
||||||
- name: config
|
- name: config
|
||||||
persistentVolumeClaim:
|
nfs:
|
||||||
claimName: config-plex
|
path: /mnt/test1/media/config/plex
|
||||||
|
server: 192.168.0.99
|
||||||
containers:
|
containers:
|
||||||
- name: plex
|
- name: plex
|
||||||
image: ghcr.io/hotio/plex:latest
|
image: ghcr.io/hotio/plex:latest
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /identity
|
||||||
|
port: 32400
|
||||||
|
initialDelaySeconds: 60
|
||||||
|
failureThreshold: 6
|
||||||
|
periodSeconds: 10
|
||||||
|
|
||||||
env:
|
env:
|
||||||
- name: PUID
|
- name: PUID
|
||||||
value: "1000"
|
value: "1000"
|
||||||
@@ -51,8 +57,6 @@ spec:
|
|||||||
volumeMounts:
|
volumeMounts:
|
||||||
- name: config
|
- name: config
|
||||||
mountPath: /config
|
mountPath: /config
|
||||||
- name: transcode
|
|
||||||
mountPath: /transcode
|
|
||||||
- name: nfs-vol
|
- name: nfs-vol
|
||||||
mountPath: /media
|
mountPath: /media
|
||||||
|
|
||||||
|
@@ -10,5 +10,17 @@ spec:
|
|||||||
protocol: TCP
|
protocol: TCP
|
||||||
port: 80
|
port: 80
|
||||||
targetPort: 32400
|
targetPort: 32400
|
||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: svc-plex-lb
|
||||||
|
spec:
|
||||||
|
type: NodePort
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/name: plex
|
||||||
|
ports:
|
||||||
|
- name: plex
|
||||||
|
protocol: TCP
|
||||||
|
port: 32400
|
||||||
|
|
||||||
|
@@ -16,11 +16,19 @@ spec:
|
|||||||
spec:
|
spec:
|
||||||
volumes:
|
volumes:
|
||||||
- name: config
|
- name: config
|
||||||
persistentVolumeClaim:
|
nfs:
|
||||||
claimName: config-prowlarr
|
path: /mnt/test1/media/config/prowlarr
|
||||||
|
server: 192.168.0.99
|
||||||
containers:
|
containers:
|
||||||
- name: prowlarr
|
- name: prowlarr
|
||||||
image: ghcr.io/hotio/prowlarr:latest
|
image: ghcr.io/hotio/prowlarr:latest
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /ping
|
||||||
|
port: 9696
|
||||||
|
initialDelaySeconds: 60
|
||||||
|
failureThreshold: 6
|
||||||
|
periodSeconds: 3
|
||||||
env:
|
env:
|
||||||
- name: PUID
|
- name: PUID
|
||||||
value: "1000"
|
value: "1000"
|
||||||
|
BIN
k8s_manifests/pvc/.DS_Store
vendored
Normal file
BIN
k8s_manifests/pvc/.DS_Store
vendored
Normal file
Binary file not shown.
9
k8s_manifests/pvc/tdarr.yaml
Normal file
9
k8s_manifests/pvc/tdarr.yaml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
---
|
||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: transcode-tdarr
|
||||||
|
spec:
|
||||||
|
accessModes: [ReadWriteOnce]
|
||||||
|
resources: { requests: { storage: 16Gi } }
|
||||||
|
|
@@ -17,14 +17,23 @@ spec:
|
|||||||
volumes:
|
volumes:
|
||||||
- name: nfs-vol
|
- name: nfs-vol
|
||||||
nfs:
|
nfs:
|
||||||
server: 192.168.0.114
|
server: 192.168.0.99
|
||||||
path: /mnt/test1/media/
|
path: /mnt/test1/media/
|
||||||
- name: config
|
- name: config
|
||||||
persistentVolumeClaim:
|
nfs:
|
||||||
claimName: config-qbittorrent
|
server: 192.168.0.99
|
||||||
|
path: /mnt/test1/media/config/qbittorrent/
|
||||||
containers:
|
containers:
|
||||||
- name: qbittorrent
|
- name: qbittorrent
|
||||||
image: ghcr.io/hotio/qbittorrent:latest
|
image: ghcr.io/hotio/qbittorrent:latest
|
||||||
|
livenessProbe: #untested
|
||||||
|
httpGet:
|
||||||
|
path: /
|
||||||
|
port: 8080
|
||||||
|
initialDelaySeconds: 60
|
||||||
|
failureThreshold: 6
|
||||||
|
periodSeconds: 10
|
||||||
|
|
||||||
env:
|
env:
|
||||||
- name: PUID
|
- name: PUID
|
||||||
value: "1000"
|
value: "1000"
|
||||||
|
@@ -17,14 +17,22 @@ spec:
|
|||||||
volumes:
|
volumes:
|
||||||
- name: nfs-vol
|
- name: nfs-vol
|
||||||
nfs:
|
nfs:
|
||||||
server: 192.168.0.114
|
server: 192.168.0.99
|
||||||
path: /mnt/test1/media/
|
path: /mnt/test1/media/
|
||||||
- name: config
|
- name: config
|
||||||
persistentVolumeClaim:
|
nfs:
|
||||||
claimName: config-radarr
|
server: 192.168.0.99
|
||||||
|
path: /mnt/test1/media/
|
||||||
containers:
|
containers:
|
||||||
- name: radarr
|
- name: radarr
|
||||||
image: ghcr.io/hotio/radarr:latest
|
image: ghcr.io/hotio/radarr:latest
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /ping
|
||||||
|
port: 7878
|
||||||
|
initialDelaySeconds: 60
|
||||||
|
failureThreshold: 6
|
||||||
|
periodSeconds: 10
|
||||||
env:
|
env:
|
||||||
- name: PUID
|
- name: PUID
|
||||||
value: "1000"
|
value: "1000"
|
||||||
|
41
k8s_manifests/slskd/deployment.yaml
Normal file
41
k8s_manifests/slskd/deployment.yaml
Normal file
@@ -0,0 +1,41 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: slskd
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: slskd
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/name: slskd
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: slskd
|
||||||
|
spec:
|
||||||
|
volumes:
|
||||||
|
- name: nfs-vol
|
||||||
|
nfs:
|
||||||
|
server: 192.168.0.99
|
||||||
|
path: /mnt/test1/media/Music
|
||||||
|
- name: config
|
||||||
|
nfs:
|
||||||
|
server: 192.168.0.99
|
||||||
|
path: /mnt/test1/media/config/slskd/
|
||||||
|
containers:
|
||||||
|
- name: slskd
|
||||||
|
image: slskd/slskd:latest
|
||||||
|
env:
|
||||||
|
- name: SLSKD_REMOTE_CONFIGURATION
|
||||||
|
value: "true"
|
||||||
|
ports:
|
||||||
|
- containerPort: 5030
|
||||||
|
- containerPort: 5031
|
||||||
|
- containerPort: 50300
|
||||||
|
volumeMounts:
|
||||||
|
- name: config
|
||||||
|
mountPath: /config
|
||||||
|
- name: nfs-vol
|
||||||
|
mountPath: /app
|
||||||
|
|
14
k8s_manifests/slskd/service.yaml
Normal file
14
k8s_manifests/slskd/service.yaml
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: svc-slskd
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/name: slskd
|
||||||
|
ports:
|
||||||
|
- name: webui
|
||||||
|
protocol: TCP
|
||||||
|
port: 80
|
||||||
|
targetPort: 5030
|
||||||
|
|
||||||
|
|
@@ -17,14 +17,22 @@ spec:
|
|||||||
volumes:
|
volumes:
|
||||||
- name: nfs-vol
|
- name: nfs-vol
|
||||||
nfs:
|
nfs:
|
||||||
server: 192.168.0.114
|
server: 192.168.0.99
|
||||||
path: /mnt/test1/media/
|
path: /mnt/test1/media/
|
||||||
- name: config
|
- name: config
|
||||||
persistentVolumeClaim:
|
nfs:
|
||||||
claimName: config-sonarr
|
server: 192.168.0.99
|
||||||
|
path: /mnt/test1/media/config/sonarr/
|
||||||
containers:
|
containers:
|
||||||
- name: sonarr
|
- name: sonarr
|
||||||
image: ghcr.io/hotio/sonarr:latest
|
image: ghcr.io/hotio/sonarr:latest
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /ping
|
||||||
|
port: 8989
|
||||||
|
initialDelaySeconds: 60
|
||||||
|
failureThreshold: 6
|
||||||
|
periodSeconds: 10
|
||||||
env:
|
env:
|
||||||
- name: PUID
|
- name: PUID
|
||||||
value: "1000"
|
value: "1000"
|
||||||
|
52
k8s_manifests/soularr/deployment.yaml
Normal file
52
k8s_manifests/soularr/deployment.yaml
Normal file
@@ -0,0 +1,52 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: soularr
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: soularr
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/name: soularr
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: soularr
|
||||||
|
spec:
|
||||||
|
volumes:
|
||||||
|
- name: nfs-vol
|
||||||
|
nfs:
|
||||||
|
server: 192.168.0.99
|
||||||
|
path: /mnt/test1/media/Music
|
||||||
|
- name: config
|
||||||
|
nfs:
|
||||||
|
server: 192.168.0.99
|
||||||
|
path: /mnt/test1/media/config/soularr/
|
||||||
|
containers:
|
||||||
|
- name: soularr
|
||||||
|
image: mrusse08/soularr:latest
|
||||||
|
#livenessProbe:
|
||||||
|
#httpGet:
|
||||||
|
# path: /
|
||||||
|
# port: 8989
|
||||||
|
#initialDelaySeconds: 60
|
||||||
|
#failureThreshold: 6
|
||||||
|
#periodSeconds: 10
|
||||||
|
env:
|
||||||
|
- name: PUID
|
||||||
|
value: "1000"
|
||||||
|
- name: PGID
|
||||||
|
value: "1000"
|
||||||
|
- name: UMASK
|
||||||
|
value: "002"
|
||||||
|
- name: SCRIPT_INTERVAL
|
||||||
|
value: "300"
|
||||||
|
- name: TZ
|
||||||
|
value: "Etc/UTC"
|
||||||
|
volumeMounts:
|
||||||
|
- name: config
|
||||||
|
mountPath: /data
|
||||||
|
- name: nfs-vol
|
||||||
|
mountPath: /media
|
||||||
|
|
87
k8s_manifests/tdarr/deployment.yaml
Normal file
87
k8s_manifests/tdarr/deployment.yaml
Normal file
@@ -0,0 +1,87 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: tdarr
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: tdarr
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app.kubernetes.io/name: tdarr
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app.kubernetes.io/name: tdarr
|
||||||
|
spec:
|
||||||
|
volumes:
|
||||||
|
#- name: transcode
|
||||||
|
# persistentVolumeClaim:
|
||||||
|
# claimName: transcode-tdarr
|
||||||
|
- name: nfs-vol
|
||||||
|
nfs:
|
||||||
|
server: 192.168.0.99
|
||||||
|
path: /mnt/test1/media/
|
||||||
|
- name: server
|
||||||
|
nfs:
|
||||||
|
server: 192.168.0.99
|
||||||
|
path: /mnt/test1/media/config/tdarr/server
|
||||||
|
|
||||||
|
- name: configs
|
||||||
|
nfs:
|
||||||
|
server: 192.168.0.99
|
||||||
|
path: /mnt/test1/media/config/tdarr/configs
|
||||||
|
|
||||||
|
- name: logs
|
||||||
|
nfs:
|
||||||
|
server: 192.168.0.99
|
||||||
|
path: /mnt/test1/media/config/tdarr/logs
|
||||||
|
containers:
|
||||||
|
- name: tdarr
|
||||||
|
image: ghcr.io/haveagitgat/tdarr:latest
|
||||||
|
#TODO
|
||||||
|
# livenessProbe:
|
||||||
|
# httpGet:
|
||||||
|
# path: /ping
|
||||||
|
# port: 8989
|
||||||
|
# initialDelaySeconds: 60
|
||||||
|
# failureThreshold: 6
|
||||||
|
# periodSeconds: 10
|
||||||
|
env:
|
||||||
|
- name: serverIP
|
||||||
|
value: "0.0.0.0"
|
||||||
|
- name: serverPort
|
||||||
|
value: "8266"
|
||||||
|
- name: webUIPort
|
||||||
|
value: "8265"
|
||||||
|
- name: internalNode
|
||||||
|
value: "true"
|
||||||
|
- name: inContainer
|
||||||
|
value: "true"
|
||||||
|
- name: ffmpegVersion
|
||||||
|
value: "6"
|
||||||
|
- name: nodeName
|
||||||
|
value: "myInternalNode"
|
||||||
|
- name: PUID
|
||||||
|
value: "1000"
|
||||||
|
- name: PGID
|
||||||
|
value: "1000"
|
||||||
|
- name: UMASK
|
||||||
|
value: "002"
|
||||||
|
- name: TZ
|
||||||
|
value: "Etc/UTC"
|
||||||
|
ports:
|
||||||
|
- containerPort: 8265
|
||||||
|
- containerPort: 8266
|
||||||
|
volumeMounts:
|
||||||
|
- name: configs
|
||||||
|
mountPath: /app/configs
|
||||||
|
- name: logs
|
||||||
|
mountPath: /app/logs
|
||||||
|
- name: server
|
||||||
|
mountPath: /app/server
|
||||||
|
- name: nfs-vol
|
||||||
|
mountPath: /media
|
||||||
|
#- name: transcode
|
||||||
|
# mountPath: /temp
|
||||||
|
|
18
k8s_manifests/tdarr/service.yaml
Normal file
18
k8s_manifests/tdarr/service.yaml
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: svc-tdarr
|
||||||
|
spec:
|
||||||
|
selector:
|
||||||
|
app.kubernetes.io/name: tdarr
|
||||||
|
ports:
|
||||||
|
- name: webui
|
||||||
|
protocol: TCP
|
||||||
|
port: 80
|
||||||
|
targetPort: 8265
|
||||||
|
- name: server
|
||||||
|
protocol: TCP
|
||||||
|
port: 8266
|
||||||
|
targetPort: 8266
|
||||||
|
|
||||||
|
|
Reference in New Issue
Block a user