diun.yaml 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495
  1. ---
  2. apiVersion: v1
  3. kind: Namespace
  4. metadata:
  5. name: diun
  6. ---
  7. apiVersion: v1
  8. kind: ServiceAccount
  9. metadata:
  10. namespace: diun
  11. name: diun
  12. ---
  13. apiVersion: rbac.authorization.k8s.io/v1
  14. kind: ClusterRole
  15. metadata:
  16. name: diun
  17. rules:
  18. - apiGroups:
  19. - ""
  20. resources:
  21. - pods
  22. verbs:
  23. - get
  24. - watch
  25. - list
  26. ---
  27. apiVersion: rbac.authorization.k8s.io/v1
  28. kind: ClusterRoleBinding
  29. metadata:
  30. name: diun
  31. roleRef:
  32. apiGroup: rbac.authorization.k8s.io
  33. kind: ClusterRole
  34. name: diun
  35. subjects:
  36. - kind: ServiceAccount
  37. name: diun
  38. namespace: diun
  39. ---
  40. apiVersion: apps/v1
  41. kind: Deployment
  42. metadata:
  43. namespace: diun
  44. name: diun
  45. spec:
  46. replicas: 1
  47. selector:
  48. matchLabels:
  49. app: diun
  50. template:
  51. metadata:
  52. labels:
  53. app: diun
  54. spec:
  55. serviceAccountName: diun
  56. containers:
  57. - name: diun
  58. image: crazymax/diun:latest
  59. imagePullPolicy: Always
  60. args: ["serve"]
  61. env:
  62. - name: TZ
  63. value: "America/New_York"
  64. - name: LOG_LEVEL
  65. value: "info"
  66. - name: LOG_JSON
  67. value: "false"
  68. - name: DIUN_WATCH_WORKERS
  69. value: "20"
  70. - name: DIUN_WATCH_SCHEDULE
  71. value: "0 */6 * * *"
  72. - name: DIUN_WATCH_JITTER
  73. value: "30s"
  74. - name: DIUN_PROVIDERS_KUBERNETES
  75. value: "true"
  76. - name: DIUN_PROVIDERS_KUBERNETES_WATCHBYDEFAULT
  77. value: "true"
  78. - name: DIUN_NOTIF_NTFY_ENDPOINT
  79. value: "https://ntfy.jibby.org"
  80. - name: DIUN_NOTIF_NTFY_TOKEN
  81. valueFrom:
  82. secretKeyRef:
  83. name: diun
  84. key: ntfy-token
  85. optional: false
  86. - name: DIUN_NOTIF_NTFY_TOPIC
  87. value: "diun"
  88. volumeMounts:
  89. - mountPath: "/data"
  90. name: "data"
  91. restartPolicy: Always
  92. volumes:
  93. - name: data
  94. persistentVolumeClaim:
  95. claimName: diun-pvc