blumeops/argocd/manifests/navidrome/deployment.yaml
Erich Blume 07e9c810ca Add RuntimeDefault seccomp profiles to all managed workloads
Addresses 32 CIS Kubernetes Benchmark failures from Prowler scan
(core_seccomp_profile_docker_default). Applied pod-level seccomp
RuntimeDefault to 18 deployments/statefulsets and 2 cronjobs.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-24 16:19:40 -07:00

72 lines
1.8 KiB
YAML

---
apiVersion: apps/v1
kind: Deployment
metadata:
name: navidrome
namespace: navidrome
spec:
replicas: 1
selector:
matchLabels:
app: navidrome
template:
metadata:
labels:
app: navidrome
spec:
securityContext:
runAsUser: 1000
runAsGroup: 1000
fsGroup: 1000
seccompProfile:
type: RuntimeDefault
containers:
- name: navidrome
image: registry.ops.eblu.me/blumeops/navidrome:kustomized
securityContext:
runAsNonRoot: true
allowPrivilegeEscalation: false
ports:
- containerPort: 4533
name: http
env:
- name: ND_SCANNER_SCHEDULE
value: "@every 1h"
- name: ND_LOGLEVEL
value: "info"
- name: ND_MUSICFOLDER
value: "/music"
- name: ND_DATAFOLDER
value: "/data"
volumeMounts:
- name: music
mountPath: /music
readOnly: true
- name: data
mountPath: /data
resources:
requests:
memory: "128Mi"
cpu: "100m"
limits:
memory: "512Mi"
cpu: "500m"
livenessProbe:
httpGet:
path: /ping
port: 4533
initialDelaySeconds: 10
periodSeconds: 30
readinessProbe:
httpGet:
path: /ping
port: 4533
initialDelaySeconds: 5
periodSeconds: 10
volumes:
- name: music
persistentVolumeClaim:
claimName: navidrome-music
- name: data
persistentVolumeClaim:
claimName: navidrome-data