From c4ca12b11aba46e3807099961e23213f3a254cd1 Mon Sep 17 00:00:00 2001 From: Tobias Brunner Date: Fri, 23 Apr 2021 21:17:10 +0200 Subject: [PATCH] install familydb --- _apps/familydb.yaml | 24 ++++++++++++++++++++++++ familydb/deployment.yaml | 35 +++++++++++++++++++++++++++++++++++ familydb/ingress.yaml | 24 ++++++++++++++++++++++++ familydb/pvc.yaml | 15 +++++++++++++++ familydb/service.yaml | 15 +++++++++++++++ 5 files changed, 113 insertions(+) create mode 100644 _apps/familydb.yaml create mode 100644 familydb/deployment.yaml create mode 100644 familydb/ingress.yaml create mode 100644 familydb/pvc.yaml create mode 100644 familydb/service.yaml diff --git a/_apps/familydb.yaml b/_apps/familydb.yaml new file mode 100644 index 0000000..cfe5942 --- /dev/null +++ b/_apps/familydb.yaml @@ -0,0 +1,24 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: familydb + namespace: argocd + finalizers: + - resources-finalizer.argocd.argoproj.io +spec: + destination: + namespace: familydb + server: https://kubernetes.default.svc + project: apps + source: + path: familydb + repoURL: https://git.tbrnt.ch/tobru/gitops-tbrnt.git + targetRevision: HEAD + syncPolicy: + automated: + prune: true +--- +apiVersion: v1 +kind: Namespace +metadata: + name: familydb diff --git a/familydb/deployment.yaml b/familydb/deployment.yaml new file mode 100644 index 0000000..198c955 --- /dev/null +++ b/familydb/deployment.yaml @@ -0,0 +1,35 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + labels: + app: familydb + name: familydb +spec: + replicas: 1 + selector: + matchLabels: + app: familydb + strategy: {} + template: + metadata: + labels: + app: familydb + spec: + containers: + - name: familydb + image: docker.io/tobru/familydb:latest + imagePullPolicy: IfNotPresent + env: + - name: DB_PATH + value: /opt/familydb/family.db + ports: + - containerPort: 8080 + protocol: TCP + name: http + volumeMounts: + - name: data + mountPath: /opt/familydb + volumes: + - name: data + persistentVolumeClaim: + claimName: data diff --git a/familydb/ingress.yaml b/familydb/ingress.yaml new file mode 100644 index 0000000..5d41770 --- /dev/null +++ b/familydb/ingress.yaml @@ -0,0 +1,24 @@ +--- +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: familydb + annotations: + cert-manager.io/cluster-issuer: letsencrypt-prod + ingress.kubernetes.io/ssl-redirect: "true" +spec: + rules: + - host: db.tobru.ch + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: familydb + port: + number: 8080 + tls: + - hosts: + - db.tobru.ch + secretName: db-tobru-ch diff --git a/familydb/pvc.yaml b/familydb/pvc.yaml new file mode 100644 index 0000000..f710fad --- /dev/null +++ b/familydb/pvc.yaml @@ -0,0 +1,15 @@ +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: data + labels: + app: familydb +spec: + accessModes: + - ReadWriteOnce + volumeMode: Filesystem + resources: + requests: + storage: 10Gi + storageClassName: local-path diff --git a/familydb/service.yaml b/familydb/service.yaml new file mode 100644 index 0000000..c61ba63 --- /dev/null +++ b/familydb/service.yaml @@ -0,0 +1,15 @@ +apiVersion: v1 +kind: Service +metadata: + labels: + app: familydb + name: familydb +spec: + ports: + - name: http + port: 8080 + protocol: TCP + targetPort: 8080 + selector: + app: familydb + type: ClusterIP