Files
automation/kubernetes-templates/mealie-recipes.yml
T
2026-04-24 15:26:28 +00:00

102 lines
2.0 KiB
YAML

apiVersion: v1
kind: Namespace
metadata:
name: mealie
---
apiVersion: v1
kind: Secret
metadata:
name: mealie-secrets
namespace: mealie
type: Opaque
data:
# Password Value: RmJsV0xPTlM4alVjNUE=
POSTGRES_PASSWORD: RmJsV0xPTlM4alVjNUE=
---
apiVersion: v1
kind: ConfigMap
metadata:
name: mealie-config
namespace: mealie
data:
# Core Settings
ALLOW_SIGNUP: "true"
PUID: "1000"
PGID: "1000"
TZ: "Africa/Johannesburg"
# Database Settings
DB_ENGINE: "postgres"
POSTGRES_USER: "mealie_user"
POSTGRES_DB: "mealie"
POSTGRES_SERVER: "192.168.1.170"
POSTGRES_PORT: "5432"
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mealie-data-pvc
namespace: mealie
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: mealie
namespace: mealie
spec:
replicas: 1
selector:
matchLabels:
app: mealie
template:
metadata:
labels:
app: mealie
annotations:
last-updated: "2026-04-24T17:20:00"
spec:
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: node-role.kubernetes.io/control-plane
operator: DoesNotExist
containers:
- name: mealie
image: ghcr.io/mealie-recipes/mealie:latest
ports:
- containerPort: 9000
envFrom:
- configMapRef:
name: mealie-config
- secretRef:
name: mealie-secrets
volumeMounts:
- name: mealie-data
mountPath: /app/data
volumes:
- name: mealie-data
persistentVolumeClaim:
claimName: mealie-data-pvc
---
apiVersion: v1
kind: Service
metadata:
name: mealie-service
namespace: mealie
spec:
type: NodePort
selector:
app: mealie
ports:
- protocol: TCP
port: 80
targetPort: 9000
nodePort: 33007