apiVersion: apps/v1 kind: Deployment metadata: name: soulsolid namespace: arr labels: app.kubernetes.io/name: soulsolid spec: revisionHistoryLimit: 1 replicas: 1 selector: matchLabels: app.kubernetes.io/name: soulsolid strategy: type: Recreate template: metadata: labels: app.kubernetes.io/name: soulsolid spec: shareProcessNamespace: true containers: - env: - name: PGID value: "10" - name: PUID value: "1000" - name: UMASK value: "022" - name: TZ value: UTC - name: SOULSOLID_CONFIG_PATH value: /config/config.yaml name: soulsolid image: kikiattias/soulsolid-plugins:latest imagePullPolicy: Always ports: - containerPort: 3535 protocol: TCP volumeMounts: - mountPath: /downloads name: nas-media-volume subPath: "soulsolid/downloads" - mountPath: /music name: nas-media-volume subPath: "soulsolid/music" - name: soulsolid-db mountPath: /app/db - name: soulsolid-config-yml mountPath: /config/config.yaml subPath: config.yaml livenessProbe: exec: command: - /bin/sh - -c - "timeout 5 stat /downloads > /dev/null" initialDelaySeconds: 60 # Give it a minute to start up periodSeconds: 30 # Check every 30 seconds timeoutSeconds: 10 # If the 'stat' command hangs for 10s, fail failureThreshold: 3 # Kill the pod after 3 consecutive failures readinessProbe: exec: command: - /bin/sh - -c - "ls /downloads" initialDelaySeconds: 30 periodSeconds: 60 resources: requests: cpu: "250m" memory: "512Mi" limits: cpu: "1000m" memory: "1Gi" restartPolicy: Always volumes: - name: nas-media-volume persistentVolumeClaim: claimName: arr-media-smb-pvc - name: soulsolid-db persistentVolumeClaim: claimName: soulsolid-db-pvc - configMap: name: soulsolid-config-cm name: soulsolid-config-yml