feat(k8s/homepage): add homepage stack

This commit is contained in:
2026-03-12 12:08:06 +02:00
parent 03bb6ab9b4
commit 5d0e50b39b
9 changed files with 358 additions and 30 deletions

View File

@@ -0,0 +1,75 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: homepage
namespace: homepage
labels:
app: homepage
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
app: homepage
template:
metadata:
labels:
app: homepage
spec:
serviceAccountName: homepage
securityContext:
# runAsNonRoot omitted — homepage image starts as root; non-root requires PUID/PGID entrypoint setup
seccompProfile:
type: RuntimeDefault
containers:
- name: homepage
image: ghcr.io/gethomepage/homepage:v1.10.1
ports:
- containerPort: 3000
name: http
protocol: TCP
envFrom:
- secretRef:
name: homepage-credentials
env:
- name: HOMEPAGE_ALLOWED_HOSTS
value: "${HOMEPAGE_HOST}"
volumeMounts:
- name: config
mountPath: /app/config/settings.yaml
subPath: settings.yaml
- name: config
mountPath: /app/config/services.yaml
subPath: services.yaml
- name: config
mountPath: /app/config/widgets.yaml
subPath: widgets.yaml
- name: config
mountPath: /app/config/bookmarks.yaml
subPath: bookmarks.yaml
- name: config
mountPath: /app/config/kubernetes.yaml
subPath: kubernetes.yaml
livenessProbe:
httpGet:
port: 3000
path: /
initialDelaySeconds: 30
periodSeconds: 30
readinessProbe:
httpGet:
port: 3000
path: /
initialDelaySeconds: 10
periodSeconds: 10
resources:
requests:
cpu: 50m
memory: 128Mi
limits:
memory: 256Mi
volumes:
- name: config
configMap:
name: homepage-config