dav.yaml 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990
  1. ---
  2. apiVersion: apps/v1
  3. kind: Deployment
  4. metadata:
  5. name: dav-deployment
  6. namespace: default
  7. labels:
  8. app: dav
  9. spec:
  10. replicas: 1
  11. selector:
  12. matchLabels:
  13. app: dav
  14. template:
  15. metadata:
  16. labels:
  17. app: dav
  18. annotations:
  19. diun.enable: "true"
  20. diun.include_tags: '^\d+\.\d+\.\d+\.\d+$'
  21. spec:
  22. containers:
  23. - image: tomsquest/docker-radicale:3.5.9.0
  24. name: radicale
  25. imagePullPolicy: IfNotPresent
  26. ports:
  27. - containerPort: 5232
  28. volumeMounts:
  29. - name: radicale-data-vol
  30. mountPath: /data
  31. - name: radicale-config-vol
  32. mountPath: /config
  33. volumes:
  34. - name: radicale-data-vol
  35. hostPath:
  36. path: /mnt/radicale/data
  37. type: Directory
  38. - name: radicale-config-vol
  39. hostPath:
  40. path: /mnt/radicale/config
  41. type: Directory
  42. nodeSelector:
  43. kubernetes.io/arch: arm64
  44. ---
  45. apiVersion: v1
  46. kind: Service
  47. metadata:
  48. name: dav
  49. namespace: default
  50. labels:
  51. app: dav
  52. spec:
  53. type: ClusterIP
  54. selector:
  55. app: dav
  56. ports:
  57. - port: 80
  58. targetPort: 5232
  59. ---
  60. apiVersion: cert-manager.io/v1
  61. kind: Certificate
  62. metadata:
  63. name: dav.bodicsek.host
  64. spec:
  65. secretName: dav.bodicsek.host
  66. issuerRef:
  67. name: letsencrypt-prod
  68. kind: ClusterIssuer
  69. dnsNames:
  70. - dav.bodicsek.host
  71. ---
  72. apiVersion: traefik.io/v1alpha1
  73. kind: IngressRoute
  74. metadata:
  75. name: dav
  76. namespace: default
  77. spec:
  78. entryPoints:
  79. - websecure
  80. routes:
  81. - kind: Rule
  82. match: Host(`dav.bodicsek.host`)
  83. services:
  84. - kind: Service
  85. name: dav
  86. namespace: default
  87. passHostHeader: true
  88. port: 80
  89. tls:
  90. secretName: dav.bodicsek.host