homelab-gitops/audiobookshelf/deployment.yaml
gwg313 bfe8435665
update default deny
Signed-off-by: gwg313 <gwg313@pm.me>
2026-05-17 00:05:02 -04:00

70 lines
1.7 KiB
YAML

apiVersion: v1
kind: Namespace
metadata:
name: audiobookshelf
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: audiobookshelf
namespace: audiobookshelf
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: audiobookshelf
template:
metadata:
labels:
app: audiobookshelf
spec:
containers:
- name: audiobookshelf
image: ghcr.io/advplyr/audiobookshelf:latest
imagePullPolicy: IfNotPresent
ports:
- containerPort: 80
name: http
protocol: TCP
env:
- name: TZ
value: "America/Toronto"
volumeMounts:
- name: audiobooks-volume
mountPath: /audiobooks
- name: podcasts-volume
mountPath: /podcasts
- name: config-volume
mountPath: /config
- name: metadata-volume
mountPath: /metadata
volumes:
- name: audiobooks-volume
persistentVolumeClaim:
claimName: audiobookshelf-audiobooks
- name: podcasts-volume
persistentVolumeClaim:
claimName: audiobookshelf-podcasts
- name: config-volume
persistentVolumeClaim:
claimName: audiobookshelf-config
- name: metadata-volume
persistentVolumeClaim:
claimName: audiobookshelf-metadata
---
apiVersion: v1
kind: Service
metadata:
name: audiobookshelf-svc
namespace: audiobookshelf
spec:
type: ClusterIP
ports:
- name: http
port: 8080
targetPort: http # References the named string 'http' from the containerPort map
protocol: TCP
selector:
app: audiobookshelf