feat(k8s): add K8s manifests for all homelab services

traefik, gitea, adguard, nextcloud, errorpages, homepages,
uptime-kuma, kener, checkmk, headscale, dockmon, metube,
downtify, portainer, netronome, userbot

Includes Helm values, deployments, services, ingress routes,
configmaps, secrets (placeholders), postgres statefulsets,
kustomize overlays, and Traefik dynamic configuration.
This commit is contained in:
2026-06-08 10:51:04 +02:00
parent f3d04e935c
commit 36922a177c
60 changed files with 2596 additions and 5 deletions
+81
View File
@@ -0,0 +1,81 @@
# Auto-generated by forust | See https://github.com/traefik/traefik-helm-chart/blob/master/values.yaml
hostNetwork: true
api:
dashboard: true
insecure: true
deployment:
initContainers:
- name: volume-permissions
image: busybox:latest
command:
- sh
- -c
- "mkdir -p /data/letsencrypt && touch /data/letsencrypt/acme.json && chmod 600 /data/letsencrypt/acme.json"
volumeMounts:
- name: data
mountPath: /data
providers:
kubernetesIngress:
enabled: false
kubernetesCRD:
enabled: true
kubernetesGateway:
enabled: false
file:
enabled: false
# Entrypoints
ports:
web:
port: 80
http:
redirections:
entryPoint:
to: websecure
scheme: https
permanent: true
websecure:
port: 443
http:
tls:
enabled: true
ssh:
port: 2221
ingressRoute:
dashboard:
enabled: false
persistence:
enabled: true
size: 100Mi
path: /data
certificatesResolvers:
letsencrypt-staging:
acme:
email: bobrovod@national.shitposting.agency
storage: /data/letsencrypt/acme.json
caServer: https://acme-staging-v02.api.letsencrypt.org/directory
httpChallenge:
entryPoint: web
volumes:
- name: traefik-dynamic
mountPath: /etc/traefik/dynamic
type: configMap
additionalArguments:
- "--providers.file.directory=/etc/traefik/dynamic"
- "--providers.file.watch=true"
logs:
general:
level: INFO
format: json
access:
enabled: true