From 5bbe4ecf0e2fc0340e0338ffa4fd49716a58a596 Mon Sep 17 00:00:00 2001 From: Radar231 Date: Thu, 12 Jan 2023 09:30:28 -0500 Subject: [PATCH] initial checkin --- README.md | 6 ++++++ uptime-kuma_deployment.yml | 41 ++++++++++++++++++++++++++++++++++++++ uptime-kuma_ingress.yml | 21 +++++++++++++++++++ uptime-kuma_pv.yml | 21 +++++++++++++++++++ uptime-kuma_pvc.yml | 19 ++++++++++++++++++ uptime-kuma_service.yml | 14 +++++++++++++ 6 files changed, 122 insertions(+) create mode 100644 README.md create mode 100644 uptime-kuma_deployment.yml create mode 100644 uptime-kuma_ingress.yml create mode 100644 uptime-kuma_pv.yml create mode 100644 uptime-kuma_pvc.yml create mode 100644 uptime-kuma_service.yml diff --git a/README.md b/README.md new file mode 100644 index 0000000..c4d120c --- /dev/null +++ b/README.md @@ -0,0 +1,6 @@ +# uptime-kuma k8s manifest + +## Introduction + +This deploys an uptime-kuma server. + diff --git a/uptime-kuma_deployment.yml b/uptime-kuma_deployment.yml new file mode 100644 index 0000000..36da745 --- /dev/null +++ b/uptime-kuma_deployment.yml @@ -0,0 +1,41 @@ +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: uptime-kuma +spec: + selector: + matchLabels: + app: uptime-kuma + replicas: 1 + strategy: + type: RollingUpdate + template: + metadata: + labels: + app: uptime-kuma + spec: + affinity: + nodeAffinity: + requiredDuringSchedulingIgnoredDuringExecution: + nodeSelectorTerms: + - matchExpressions: + - key: kubernetes.io/arch + operator: In + values: + - arm64 + containers: + - name: uptime-kuma + image: louislam/uptime-kuma + ports: + - containerPort: 3001 + name: "uptime-kuma" + volumeMounts: + - name: uptime-kuma + mountPath: "/app/data" + volumes: + - name: uptime-kuma + persistentVolumeClaim: + claimName: uptime-kuma-pvc + +# EOF diff --git a/uptime-kuma_ingress.yml b/uptime-kuma_ingress.yml new file mode 100644 index 0000000..25e1eac --- /dev/null +++ b/uptime-kuma_ingress.yml @@ -0,0 +1,21 @@ +--- +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: uptime-kuma + annotations: + kubernetes.io/ingress.class: haproxy +spec: + rules: + - host: uptime-kuma.lan + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: uptime-kuma + port: + number: 3001 + +# EOF diff --git a/uptime-kuma_pv.yml b/uptime-kuma_pv.yml new file mode 100644 index 0000000..4bc2be6 --- /dev/null +++ b/uptime-kuma_pv.yml @@ -0,0 +1,21 @@ +--- +apiVersion: v1 +kind: PersistentVolume +metadata: + name: uptime-kuma-pv + labels: + name: uptime-kuma-pv +spec: + storageClassName: manual + capacity: + storage: 1Gi + accessModes: + - ReadWriteOnce + mountOptions: + - hard + - nfsvers=4.0 + nfs: + server: 192.168.20.11 + path: "/volume1/k8s-storage/uptime-kuma" + +# EOF diff --git a/uptime-kuma_pvc.yml b/uptime-kuma_pvc.yml new file mode 100644 index 0000000..8ff5f90 --- /dev/null +++ b/uptime-kuma_pvc.yml @@ -0,0 +1,19 @@ +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: uptime-kuma-pvc + labels: + app: uptime-kuma +spec: + accessModes: + - ReadWriteOnce + storageClassName: "manual" + resources: + requests: + storage: 1Gi + selector: + matchLabels: + name: uptime-kuma-pv + +# EOF diff --git a/uptime-kuma_service.yml b/uptime-kuma_service.yml new file mode 100644 index 0000000..0ed308f --- /dev/null +++ b/uptime-kuma_service.yml @@ -0,0 +1,14 @@ +--- +apiVersion: v1 +kind: Service +metadata: + name: uptime-kuma +spec: + ports: + - name: http3001 + port: 3001 + selector: + # apply service to any pod with label app: uptime-kuma + app: uptime-kuma + +# EOF