apiVersion: v1 kind: Namespace metadata: name: homepage --- apiVersion: v1 kind: ConfigMap metadata: name: homepage-config namespace: homepage data: settings.yaml: | title: Jay's Homelab theme: dark color: slate layout: Infrastructure: style: row columns: 4 Applications: style: row columns: 4 Monitoring: style: row columns: 4 services.yaml: | - Infrastructure: - ArgoCD: href: https://argocd.home.lan description: GitOps controller icon: argocd.png - Longhorn: href: https://longhorn.home.lan description: Kubernetes storage icon: longhorn.png - Gitea: href: https://git.phillips-home.net description: Git repositories icon: gitea.png - Applications: - BookStack: href: https://docs.phillips-home.net description: Documentation icon: bookstack.png - Vaultwarden: href: https://vault.phillips-home.net description: Password manager icon: vaultwarden.png - Open WebUI: href: http://hdcai0001:3000 description: Local AI assistant icon: open-webui.png - Uptime Kuma: href: https://uptime.home.lan description: Status monitoring icon: uptime-kuma.png - Monitoring: - Grafana: href: https://grafana.home.lan description: Metrics dashboards icon: grafana.png - Prometheus: href: https://prometheus.home.lan description: Metrics database icon: prometheus.png bookmarks.yaml: | - Homelab: - Kubernetes Docs: - abbr: K8S href: https://kubernetes.io/docs/ - ArgoCD Docs: - abbr: CD href: https://argo-cd.readthedocs.io/ - Longhorn Docs: - abbr: LH href: https://longhorn.io/docs/ widgets.yaml: | - resources: cpu: true memory: true disk: / - search: provider: duckduckgo target: _blank kubernetes.yaml: | mode: disabled docker.yaml: | disabled: true --- apiVersion: apps/v1 kind: Deployment metadata: name: homepage namespace: homepage spec: replicas: 1 selector: matchLabels: app: homepage template: metadata: labels: app: homepage spec: containers: - name: homepage image: ghcr.io/gethomepage/homepage:latest ports: - containerPort: 3000 volumeMounts: - name: homepage-config mountPath: /app/config volumes: - name: homepage-config configMap: name: homepage-config --- apiVersion: v1 kind: Service metadata: name: homepage namespace: homepage spec: selector: app: homepage ports: - port: 80 targetPort: 3000