Files
Kubernetes-Manifests/README.md

6.7 KiB

Kubernetes Manifests Repository

This repository contains Kubernetes manifest files for a comprehensive self-hosted platform running 40+ applications across various categories. This infrastructure was created for the migration from Docker to Kubernetes (K3S).

All applications are managed using GitOps principles with ArgoCD and utilize cert-manager for automated TLS certificate management.

Repository Structure

The repository is split into three top-level areas. Within each, there is one directory per application/component, and every manifest follows the <app>-<kind>.yaml naming convention.

├── infra/                       # Cluster infrastructure
│   ├── argocd/                  # GitOps continuous deployment
│   ├── cert-manager/            # TLS certificate management
│   ├── cloud-native-postgres/   # PostgreSQL operator
│   ├── envoy-gateway/           # Kubernetes Gateway API configuration
│   ├── kubevip/                 # High availability
│   ├── longhorn/                # Distributed storage
│   └── metallb/                 # Load balancer
│
├── applications/                # Deployed workloads
│   ├── authentik/               # Identity provider and SSO
│   ├── azure-ddns-python/       # Dynamic DNS updater
│   ├── bentopdf/                # PDF conversion
│   ├── comfyui/                 # Stable Diffusion workflow UI
│   ├── databasus/               # Database management
│   ├── excalidraw/              # Whiteboard / diagramming
│   ├── gitea/                   # Git service
│   ├── gotify/                  # Push notification server
│   ├── immich/                  # Photo and video management
│   ├── infisical/               # Secrets management
│   ├── it-tools/                # IT utilities
│   ├── jellyfin/                # Media server
│   ├── minecraft/               # Game servers
│   ├── minio-aistor/            # S3-compatible object storage
│   ├── n8n/                     # Workflow automation
│   ├── netbootxyz/              # Network boot service
│   ├── ollama/                  # Local LLM runner
│   ├── openwebui/               # Web UI for AI models
│   ├── outline/                 # Knowledge base / wiki
│   ├── passbolt/                # Password manager
│   ├── pelican/                 # Game server management panel
│   ├── proxmox/                 # Virtualization platform
│   ├── react-resume/            # Resume builder application
│   ├── searxng/                 # Privacy-respecting search engine
│   ├── technitium/              # DNS server
│   ├── truenas/                 # Storage system
│   ├── unifi/                   # Network controller
│   ├── uptime-kuma/             # Uptime monitoring
│   ├── victoria-metrics/        # Metrics and monitoring
│   ├── wikijs/                  # Documentation wiki
│   └── zipline/                 # File sharing
│
└── deprecated/                  # Deprecated applications

Categories

Core Infrastructure

  • ArgoCD: GitOps continuous deployment and application management
  • cert-manager: Automated TLS certificate provisioning using Azure DNS
  • MetalLB: Bare-metal load balancer (IP pool: 10.8.11.100-10.8.11.150)
  • KubeVIP: High-availability control plane
  • Longhorn: Distributed block storage
  • Cloud Native Postgres: PostgreSQL operator for database management
  • Envoy Gateway: Kubernetes Gateway API implementation
  • Infisical: Secrets management platform
  • Authentik: Identity provider and SSO

Media & Entertainment

  • Jellyfin: Media streaming server
  • Immich: Self-hosted photo and video management
  • Minecraft: Game servers (ATM-10 and Stacia 2 Expert modpacks)

AI & Machine Learning

  • Ollama: Local LLM runner
  • Open WebUI: Web interface for AI models
  • ComfyUI: Stable Diffusion workflow UI
  • Stable Diffusion: Image generation service

Self-Hosted Tools

  • Harbor: Container image registry
  • Pelican: Game server management panel

Development & CI/CD

  • Gitea: Self-hosted Git service with container registry
  • n8n: Workflow automation platform
  • MinIO AIStor: S3-compatible object storage

Productivity & Collaboration

  • React-Resume: Resume builder with MinIO and PostgreSQL
  • Passbolt: Team password manager
  • Wiki.js: Modern documentation platform
  • Outline: Team knowledge base and wiki (PostgreSQL, Redis/Valkey, MinIO S3, Authentik SSO)
  • Zipline: File sharing and screenshot service
  • Gotify: Push notification server with REST API and WebSocket support
  • BentoPDF: PDF conversion service
  • Excalidraw: Online whiteboard and diagramming tool
  • SearXNG: Privacy-respecting metasearch engine
  • Databasus: Database management UI
  • Uptime Kuma: Uptime and status monitoring

Administration & Monitoring

  • IT-Tools: Collection of useful IT utilities
  • Technitium: DNS server with web interface
  • Azure DDNS Python: Dynamic DNS updater for Azure DNS
  • NetbootXYZ: Network boot service for OS installation
  • VictoriaMetrics: Metrics collection and monitoring stack

External Service Integration

  • Proxmox: Virtualization platform integration
  • UniFi: Network controller integration
  • TrueNAS: Storage system integration

Deprecated

  • Nginx Ingress Controller: Replaced by Envoy Gateway; dropped after upstream support ended in March 2025
  • Psono: Self-hosted password manager; replaced by Passbolt
  • Vaultwarden: Self-hosted Bitwarden server; no longer in use
  • AFFiNE: Collaborative workspace and note-taking platform; no longer in use
  • Jenkins: CI/CD automation server; no longer in use
  • Ntfy: Push notification service; no longer in use

Infrastructure

  • Kubernetes Cluster: K3S v1.33+
  • Ingress: Envoy Gateway (Kubernetes Gateway API)
  • Load Balancer: MetalLB (IP pool: 10.8.11.100-10.8.11.150)
  • Storage: Longhorn distributed storage, separate PVCs per data type
  • TLS: cert-manager with Azure DNS validation, domain *.jsme.be
  • Secrets: Infisical secrets management
  • SSO: Authentik for centralized authentication
  • RBAC: Role-based access control for ArgoCD and service accounts

Deployment

ArgoCD monitors this repository and automatically syncs changes to the cluster. Rollbacks are possible through Git history.

Maintenance

  • GitOps: All changes made through Git commits
  • Certificate Renewal: Automated via cert-manager
  • Updates: Managed through image tag updates in manifests