audiobookshelf.yaml 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697
  1. ---
  2. apiVersion: apps/v1
  3. kind: Deployment
  4. metadata:
  5. name: audiobookshelf
  6. namespace: plex
  7. spec:
  8. strategy:
  9. type: Recreate
  10. selector:
  11. matchLabels:
  12. app: audiobookshelf
  13. replicas: 1
  14. template:
  15. metadata:
  16. labels:
  17. app: audiobookshelf
  18. annotations:
  19. backup.velero.io/backup-volumes-excludes: media
  20. spec:
  21. containers:
  22. - name: audiobookshelf
  23. image: ghcr.io/advplyr/audiobookshelf:latest
  24. imagePullPolicy: Always
  25. ports:
  26. - containerPort: 80
  27. name: http-web-svc
  28. volumeMounts:
  29. - mountPath: /config
  30. name: data
  31. subPath: config
  32. - mountPath: /metadata
  33. name: data
  34. subPath: metadata
  35. - mountPath: /audiobooks
  36. name: media
  37. subPath: Audiobooks
  38. - mountPath: /podcasts
  39. name: media
  40. subPath: Podcasts
  41. env:
  42. - name: TZ
  43. value: America/New_York
  44. livenessProbe:
  45. #httpGet:
  46. # path: /web/index.html
  47. # port: 13378
  48. #failureThreshold: 5
  49. #initialDelaySeconds: 10
  50. #periodSeconds: 30
  51. #timeoutSeconds: 10
  52. resources:
  53. #limits:
  54. # ephemeral-storage: "10Gi"
  55. volumes:
  56. - name: data
  57. persistentVolumeClaim:
  58. claimName: audiobookshelf-pvc
  59. - name: media
  60. persistentVolumeClaim:
  61. claimName: plex-pvc
  62. readOnly: true
  63. ---
  64. apiVersion: v1
  65. kind: Service
  66. metadata:
  67. name: audiobookshelf-service
  68. namespace: plex
  69. spec:
  70. selector:
  71. app: audiobookshelf
  72. type: ClusterIP
  73. ports:
  74. - name: audiobookshelf-web-port
  75. protocol: TCP
  76. port: 80
  77. targetPort: http-web-svc
  78. ---
  79. apiVersion: networking.k8s.io/v1
  80. kind: Ingress
  81. metadata:
  82. name: audiobookshelf
  83. namespace: plex
  84. annotations:
  85. traefik.ingress.kubernetes.io/router.entrypoints: websecure
  86. spec:
  87. rules:
  88. - host: audiobookshelf.jibby.org
  89. http:
  90. paths:
  91. - path: /
  92. pathType: Prefix
  93. backend:
  94. service:
  95. name: audiobookshelf-service
  96. port:
  97. number: 80