Research-Stack/4-Infrastructure/k3s-flake/manifests/media/audiobookshelf.yaml
2026-05-25 16:24:21 -05:00

74 lines
1.5 KiB
YAML

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: audiobookshelf-config
namespace: media
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 1Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: audiobookshelf
namespace: media
labels:
app: audiobookshelf
spec:
replicas: 1
selector:
matchLabels:
app: audiobookshelf
template:
metadata:
labels:
app: audiobookshelf
spec:
nodeSelector:
topology.researchstack.io/role: core
containers:
- name: audiobookshelf
image: ghcr.io/advplyr/audiobookshelf:latest
ports:
- containerPort: 80
env:
- name: TZ
value: "America/Chicago"
volumeMounts:
- name: config
mountPath: /config
- name: metadata
mountPath: /metadata
- name: media
mountPath: /audiobooks
subPath: audiobooks
- name: media
mountPath: /podcasts
subPath: podcasts
volumes:
- name: config
persistentVolumeClaim:
claimName: audiobookshelf-config
- name: metadata
emptyDir: {}
- name: media
hostPath:
path: /mnt/media
type: DirectoryOrCreate
---
apiVersion: v1
kind: Service
metadata:
name: audiobookshelf
namespace: media
spec:
type: NodePort
selector:
app: audiobookshelf
ports:
- port: 80
targetPort: 80
nodePort: 30807