Files
Servarr_kube/servarr.kube.yaml
T
2024-07-24 15:15:32 +01:00

314 lines
7.2 KiB
YAML

apiVersion: v1
kind: Namespace
metadata:
name: servarr
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: servarr
namespace: servarr
spec:
replicas: 1
selector:
matchLabels:
app: servarr
template:
metadata:
labels:
app: servarr
spec:
hostNetwork: false
nodeName: kube-master
containers:
- name: gluetun
image: qmcgaw/gluetun:v3
imagePullPolicy: Always
securityContext:
# sysctls:
# - name: net.ipv4.conf.all.src_valid_mark
# value: "1"
# - name: net.ipv6.conf.all.disable_ipv6
# value: "1"
privileged: true
capabilities:
add: ["NET_ADMIN", "NET_RAW"]
env:
- name: VPN_SERVICE_PROVIDER
value: "custom"
- name: VPN_TYPE
value: "wireguard"
- name: VPN_ENDPOINT_IP
valueFrom:
secretKeyRef:
name: gluetun-secret-netherland
key: VPN_ENDPOINT_IP
- name: VPN_ENDPOINT_PORT
valueFrom:
secretKeyRef:
name: gluetun-secret-netherland
key: VPN_ENDPOINT_PORT
- name: WIREGUARD_PUBLIC_KEY
valueFrom:
secretKeyRef:
name: gluetun-secret-netherland
key: WIREGUARD_PUBLIC_KEY
- name: WIREGUARD_PRIVATE_KEY
valueFrom:
secretKeyRef:
name: gluetun-secret-netherland
key: WIREGUARD_PRIVATE_KEY
- name: WIREGUARD_ADDRESSES
value: "10.2.0.2/32"
- name: FIREWALL_INPUT_PORTS
value: "8081,7878,9696,9091,51413,8080,6881,8989,8191"
resources:
limits:
cpu: 100m
memory: 50Mi
- name: sickchill
image: sickchill/sickchill:latest
imagePullPolicy: Always
volumeMounts:
- name: host-localtime
mountPath: /etc/localtime
- name: sickchill-cache
mountPath: /app/sickchill/sickchill/gui/slick/cache
- name: sickchill-data
mountPath: /data
- name: sickchill-downloads
mountPath: /downloads
- name: sickchill-tv
mountPath: /tv
- name: servarr-data
mountPath: /disk
ports:
- containerPort: 8081
name: sickchill-port
securityContext:
privileged: true
capabilities:
add: ["NET_ADMIN", "NET_RAW"]
resources:
limits:
cpu: 100m
memory: 50Mi
- name: radarr
image: lscr.io/linuxserver/radarr:latest
imagePullPolicy: Always
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: "Etc/UTC"
volumeMounts:
- name: radarr-config
mountPath: /config
- name: servarr-data
mountPath: /mnt/media
- name: servarr-data
mountPath: /disk
- name: radarr-download
mountPath: /mnt/downloads
resources:
limits:
cpu: 100m
memory: 50Mi
ports:
- containerPort: 7878
name: radarr-port
- name: prowlarr
# image: linuxserver/prowlarr:latest
image: lscr.io/linuxserver/prowlarr:latest
imagePullPolicy: Always
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: "Etc/UTC"
volumeMounts:
- name: prowlarr-config
mountPath: /config
- name: servarr-data
mountPath: /disk
ports:
- containerPort: 9696
name: prowlarr-port
resources:
limits:
cpu: 100m
memory: 50Mi
- name: sonarr
image: lscr.io/linuxserver/sonarr:latest
imagePullPolicy: Always
env:
- name: PUID
value: "1000"
- name: PGID
value: "1000"
- name: TZ
value: "Etc/UTC"
volumeMounts:
- name: sonarr-config
mountPath: /config
- name: servarr-data
mountPath: /disk
ports:
- containerPort: 8989
name: sonarr-port
resources:
limits:
cpu: 100m
memory: 50Mi
# - name: flaresolverr
# image: ghcr.io/flaresolverr/flaresolverr:latest
# imagePullPolicy: Always
# env:
# - name: LOG_LEVEL
# value: "info"
# - name: LOG_HTML
# value: "false"
# - name: CAPTCHA_SOLVER
# value: "none"
# - name: TZ
# value: "Etc/UTC"
# ports:
# - containerPort: 8191
# name: flare-port
securityContext:
sysctls:
- name: net.ipv4.conf.all.src_valid_mark
value: "1"
- name: net.ipv6.conf.all.disable_ipv6
value: "1"
volumes:
- name: servarr-data
hostPath:
path: /data
- name: host-localtime
hostPath:
path: /etc/localtime
- name: sickchill-cache
hostPath:
path: /opt/kubernetes/Servarr_kube/configs/sickchill/cache
- name: sickchill-data
hostPath:
path: /opt/kubernetes/Servarr_kube/configs/sickchill/data
- name: sickchill-downloads
hostPath:
path: /opt/kubernetes/Servarr_kube/configs/sickchill/downloads
- name: sickchill-tv
hostPath:
path: /opt/kubernetes/Servarr_kube/configs/sickchill/tv
- name: radarr-config
hostPath:
path: /opt/kubernetes/Servarr_kube/configs/radarr/
- name: radarr-download
hostPath:
path: /data/download
- name: prowlarr-config
hostPath:
path: /opt/kubernetes/Servarr_kube/configs/prowlarr/
- name: sonarr-config
hostPath:
path: /opt/kubernetes/Servarr_kube/configs/sonarr/
---
apiVersion: v1
kind: Service
metadata:
name: sickchill
namespace: servarr
spec:
ports:
- name: sickchill
port: 80
targetPort: sickchill-port
protocol: TCP
# nodePort: 30865
# type: NodePort
selector:
app: servarr
---
apiVersion: v1
kind: Service
metadata:
name: radarr
namespace: servarr
spec:
ports:
- name: radarr
port: 80
targetPort: radarr-port
protocol: TCP
# nodePort: 31084
# type: NodePort
selector:
app: servarr
---
apiVersion: v1
kind: Service
metadata:
name: prowlarr
namespace: servarr
spec:
ports:
- name: prowlarr
port: 80
targetPort: prowlarr-port
protocol: TCP
# nodePort: 31884
# type: NodePort
selector:
app: servarr
---
apiVersion: v1
kind: Service
metadata:
name: sonarr
namespace: servarr
spec:
ports:
- name: sonarr
port: 80
targetPort: sonarr-port
protocol: TCP
# nodePort: 32235
# type: NodePort
selector:
app: servarr
---
apiVersion: v1
kind: Service
metadata:
name: flaresolverr
namespace: servarr
spec:
ports:
- name: flaresolverr
port: 80
targetPort: flare-port
protocol: TCP
# nodePort: 32235
# type: NodePort
selector:
app: servarr