set up mealie

This commit is contained in:
Alvin Wang 2026-04-20 12:09:03 -04:00
parent 33036b8420
commit aeb19a521c
6 changed files with 44 additions and 20 deletions

View File

@ -9,3 +9,6 @@ The mac-worker is running inside orbstack linux VM if that matters.
I have a DNS rewrite pointing *.internal to 10.0.1.250 which is traefik-internal. I have a DNS rewrite pointing *.internal to 10.0.1.250 which is traefik-internal.
/dogstore/ is a NFS path that's available to all nodes /dogstore/ is a NFS path that's available to all nodes
secrets are managed by sops

View File

@ -43,7 +43,7 @@ spec:
args: args:
- -in-cluster - -in-cluster
- -plugins-dir=/headlamp/plugins - -plugins-dir=/headlamp/plugins
- -insecure-no-authentication - -enable-helm
ports: ports:
- containerPort: 4466 - containerPort: 4466
--- ---

View File

@ -0,0 +1,32 @@
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:
name: mealie
annotations:
kubernetes.io/ingress.class: traefik-internal
spec:
entryPoints:
- web
routes:
- match: Host(`mealie.{{ .Values.internalDomain }}`)
kind: Rule
services:
- name: mealie
port: 9000
---
apiVersion: traefik.io/v1alpha1
kind: IngressRoute
metadata:
name: mealie-tls
annotations:
kubernetes.io/ingress.class: traefik-internal
spec:
entryPoints:
- websecure
routes:
- match: Host(`mealie.{{ .Values.internalDomain }}`)
kind: Rule
services:
- name: mealie
port: 9000
tls: {}

View File

@ -1,16 +1,3 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mealie-data
labels:
app: mealie
spec:
accessModes: [ReadWriteOnce]
storageClassName: {{ .Values.storageClass }}
resources:
requests:
storage: {{ .Values.storageSize }}
---
apiVersion: apps/v1 apiVersion: apps/v1
kind: Deployment kind: Deployment
metadata: metadata:
@ -29,6 +16,8 @@ spec:
labels: labels:
app: mealie app: mealie
spec: spec:
nodeSelector:
homelab/node-role: worker
containers: containers:
- name: mealie - name: mealie
image: {{ .Values.image }} image: {{ .Values.image }}
@ -66,8 +55,9 @@ spec:
mountPath: /app/data mountPath: /app/data
volumes: volumes:
- name: data - name: data
persistentVolumeClaim: hostPath:
claimName: mealie-data path: /dogstore/service-data/mealie
type: DirectoryOrCreate
--- ---
apiVersion: v1 apiVersion: v1
kind: Service kind: Service

View File

@ -1,14 +1,13 @@
domain: ratboo.me domain: ratboo.me
internalDomain: dog
certResolver: myresolver certResolver: myresolver
tz: America/Los_Angeles tz: America/Los_Angeles
puid: "1000" puid: "1000"
pgid: "1000" pgid: "1000"
image: ghcr.io/mealie-recipes/mealie:v3.14.0 image: ghcr.io/mealie-recipes/mealie:v3.16.0
secretName: mealie-secrets secretName: mealie-secrets
storageClass: longhorn
storageSize: 5Gi
resources: resources:
limits: limits:

View File

@ -11,7 +11,7 @@ storageClass: longhorn
webserver: webserver:
image: ghcr.io/paperless-ngx/paperless-ngx:latest image: ghcr.io/paperless-ngx/paperless-ngx:latest
csrfTrustedOrigins: "https://paperless.ratboo.me" csrfTrustedOrigins: "https://paperless.ratboo.me,http://paperless.dog,https://paperless.dog"
redis: redis:
image: docker.io/library/redis:7 image: docker.io/library/redis:7