Core Apps
Production-grade application deployments for my Kubernetes homelab
This repository contains the core applications deployed to my Kubernetes homelab. Applications are deployed using either Kubernetes manifests or Helm charts (with upstream subcharts and custom values).
Why Helm? I prefer Helm charts when upstream versions exist because Renovate can automatically track new chart versions, whereas image tags in raw manifests aren't always semantically versioned.
GitOps Workflow: This repository is monitored by ArgoCD and serves as the source of truth for deployments. Each top-level directory is its own ArgoCD Application, with subdirectories representing components within that application.
Automated Commits: Apps that I wrote/maintain directly (such as yt-dlp-bot and zap2xml) get their manifests automatically updated via an Actions workflow in their respective repositories
arr-stack/- Arr Stack (manifests)flaresolverr/- Flaresolverr (captcha processor)prowlarr/- Prowlarr (indexer manager)radarr/- Radarr (movie media manager)sonarr/- Sonarr (TV series media manager)tunnel/- Custom SSH tunnel to my seedbox to securely communicate with Deluge
attic/- Attic NixOS cache server (manifests)authentik/- Authentik SSO server (Helm chart)gitea/- Gitea Git Server (Helm chart)gitea-runner/- Gitea Runner (manifests)buildkitd/- Docker Buildkitd build environment
grafana/- Grafana observability dashboard (Helm chart)jellyfin/- Jellyfin media server (Helm chart)renovate/- Renovate automated dependency manager (manifests)vaultwarden/- Vaultwarden password manager (manifests)whatismyip/- Simple "what is my IP" HTTP service (manifests)yt-dlp-bot/- yt-dlp bot (manifests); a custom Discord bot i created for downloading and storing YouTube videos ad-hoczap2xml/- kube-zap2xml (manifests); modified version of zap2xml (zap2it TV listings scraper) designed for use as Kubernetes jobs and sends the result XMLTV format to a Rook-Ceph S3 bucket