# https://kubernetes.io/docs/concepts/workloads/controllers/deployment/ apiVersion: apps/v1 kind: Deployment metadata: name: uptime-kuma namespace: uptime-kuma labels: app: uptime-kuma spec: selector: matchLabels: app: uptime-kuma replicas: 1 strategy: rollingUpdate: maxSurge: 25% maxUnavailable: 25% type: RollingUpdate template: metadata: labels: app: uptime-kuma spec: # initContainers: # Init containers are exactly like regular containers, except: # - Init containers always run to completion. # - Each init container must complete successfully before the next one starts. containers: - name: uptime-kuma image: louislam/uptime-kuma:1.11.3-alpine imagePullPolicy: Always resources: requests: cpu: 100m memory: 100Mi limits: cpu: 100m memory: 100Mi livenessProbe: exec: command: - node - extra/healthcheck.js initialDelaySeconds: 180 timeoutSeconds: 30 successThreshold: 1 periodSeconds: 60 readinessProbe: httpGet: path: / port: 3001 initialDelaySeconds: 180 timeoutSeconds: 2 successThreshold: 1 failureThreshold: 3 periodSeconds: 10 ports: - containerPort: 3001 name: http-3001 volumeMounts: - name: config mountPath: /app/data volumes: - name: config persistentVolumeClaim: claimName: uptime-kuma-data restartPolicy: Always ---