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