# Shared media PV — hostPath /media on Legion (single-node cluster) apiVersion: v1 kind: PersistentVolume metadata: name: media-data spec: capacity: storage: 500Gi accessModes: - ReadWriteOnce persistentVolumeReclaimPolicy: Retain storageClassName: "" hostPath: path: /media type: Directory claimRef: namespace: media name: media-data --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: media-data namespace: media spec: storageClassName: "" volumeName: media-data accessModes: - ReadWriteOnce resources: requests: storage: 500Gi --- # Per-service config PVCs (small, local-path provisioner) apiVersion: v1 kind: PersistentVolumeClaim metadata: name: plex-config namespace: media spec: storageClassName: local-path accessModes: - ReadWriteOnce resources: requests: storage: 10Gi --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: radarr-config namespace: media spec: storageClassName: local-path accessModes: - ReadWriteOnce resources: requests: storage: 2Gi --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: sonarr-config namespace: media spec: storageClassName: local-path accessModes: - ReadWriteOnce resources: requests: storage: 2Gi --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: prowlarr-config namespace: media spec: storageClassName: local-path accessModes: - ReadWriteOnce resources: requests: storage: 1Gi --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: qbittorrent-config namespace: media spec: storageClassName: local-path accessModes: - ReadWriteOnce resources: requests: storage: 1Gi --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: bazarr-config namespace: media spec: storageClassName: local-path accessModes: - ReadWriteOnce resources: requests: storage: 1Gi --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: overseerr-config namespace: media spec: storageClassName: local-path accessModes: - ReadWriteOnce resources: requests: storage: 1Gi