--- /dev/null
+apiVersion: apps/v1
+kind: Deployment
+metadata:
+ name: umami
+spec:
+ selector:
+ matchLabels:
+ app: umami
+ replicas: 1
+ template:
+ metadata:
+ labels:
+ app: umami
+ spec:
+ containers:
+ - name: umami
+ image: ghcr.io/umami-software/umami:latest
+ imagePullPolicy: Always
+ ports:
+ - containerPort: 3000
+ env:
+ - name: DATABASE_URL
+ - name: APP_SECRET
+ value: ${UMAMI_APP_SECRET}
+ - name: SKIP_LOCATION_HEADERS
+ value: 1
+ - name: DISABLE_UPDATES
+ value: 1
+ - name: DISABLE_TELEMETRY
+ value: 1
+ # TODO: Consider mounting a volume to backup this data.
+ # TODO: Use secrets for db configuration.
+ - name: umami-postgres
+ image: postgres:15-alpine
+ env:
+ - name: POSTGRES_DB
+ value: umami
+ - name: POSTGRES_USER
+ value: umami
+ - name: POSTGRES_PASSWORD
+ value: umami
+---
+apiVersion: v1
+kind: Service
+metadata:
+ name: umami-service
+ labels:
+ app: umami
+spec:
+ type: NodePort
+ ports:
+ - port: 3000
+ targetPort: 3000
+ protocol: TCP
+ name: http
+ selector:
+ app: umami