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