From 08bd23ef96cd5122e0fea1c164ea583670cdeec8 Mon Sep 17 00:00:00 2001 From: The Ephemeral Force Date: Tue, 20 May 2025 16:39:51 -0400 Subject: [PATCH] addin' more services, just addin' more services --- comments.yaml | 81 ++++++++++++++++++++++++++++++++++++++++++++++++ mysql.yaml | 2 +- umami.yaml | 85 +++++++++++++++++++++++++++++++++++++++++++++++++++ 3 files changed, 167 insertions(+), 1 deletion(-) create mode 100644 comments.yaml create mode 100644 umami.yaml diff --git a/comments.yaml b/comments.yaml new file mode 100644 index 0000000..ea9b4da --- /dev/null +++ b/comments.yaml @@ -0,0 +1,81 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: comments-pvc +spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 1Gi + +--- + +apiVersion: apps/v1 +kind: Deployment +metadata: + name: comments + labels: + app: comments +spec: + selector: + matchLabels: + app: comments + template: + metadata: + labels: + app: comments + spec: + containers: + - name: comments + image: docker.clarkeis.com/fastcomments + ports: + - containerPort: 4000 + volumeMounts: + - mountPath: /db + name: comments-data + imagePullSecrets: + - name: regcred + volumes: + - name: comments-data + persistentVolumeClaim: + claimName: comments-pvc + +--- + +apiVersion: v1 +kind: Service +metadata: + name: comments-svc +spec: + selector: + app: comments + ports: + - port: 80 + targetPort: 4000 + +--- + +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + annotations: + cert-manager.io/cluster-issuer: letsencrypt-issuer + kubernetes.io/ingress.class: traefik + name: comments +spec: + rules: + - host: comments.clarkeis.com + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: comments-svc + port: + number: 80 + tls: + - hosts: + - comments.clarkeis.com + secretName: comments-tls diff --git a/mysql.yaml b/mysql.yaml index 2b45c4a..affa4ab 100644 --- a/mysql.yaml +++ b/mysql.yaml @@ -55,7 +55,7 @@ spec: app: mysql spec: containers: - - image: mysql:5.6 + - image: mysql:5.7 name: mysql env: - name: MYSQL_ROOT_PASSWORD diff --git a/umami.yaml b/umami.yaml new file mode 100644 index 0000000..ec34835 --- /dev/null +++ b/umami.yaml @@ -0,0 +1,85 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: umami-postgres-pvc +spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 10Gi +--- + +apiVersion: apps/v1 +kind: Deployment +metadata: + name: umami +spec: + replicas: 1 + selector: + matchLabels: + app: umami + template: + metadata: + labels: + app: umami + spec: + containers: + - name: umami-ctr + image: docker.umami.is/umami-software/umami:postgresql-latest + ports: + - containerPort: 3000 + env: + - name: DATABASE_URL + value: "postgresql://postgres@localhost:5432/postgres" + - name: postgres + image: postgres:latest + env: + - name: POSTGRES_PASSWORD + value: "password" + volumeMounts: + - mountPath: '/var/lib/postgresql/data' + name: postgres-umami-volume + volumes: + - name: postgres-umami-volume + persistentVolumeClaim: + claimName: umami-postgres-pvc + +--- + +apiVersion: v1 +kind: Service +metadata: + name: umami-svc +spec: + selector: + app: umami + ports: + - port: 80 + targetPort: 3000 + +--- + +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + annotations: + cert-manager.io/cluster-issuer: letsencrypt-issuer + kubernetes.io/ingress.class: traefik + name: umami +spec: + rules: + - host: analytics.clarkeis.com + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: umami-svc + port: + number: 80 + tls: + - hosts: + - analytics.clarkeis.com + secretName: analytics-tls