No description
| apps | ||
| app-of-apps.yaml | ||
| README.md | ||
k8s-asxpio-gitops
GitOps repo for self-hosted Kubernetes cluster on Hetzner, managed by ArgoCD.
Cluster
- Provider: Hetzner Cloud,
hel1(Helsinki) - Infrastructure: ../hcloud-k8s (Terraform, hcloud-k8s/kubernetes module v3.27.2)
- OS: Talos Linux
- Nodes: 1x control plane (
cx23) + 2x worker (cx23) — each 2 vCPU, 4 GB RAM - Ingress: Traefik v35.0.1 (Helm), Let's Encrypt TLS via ACME TLS challenge (
certs@asxp.io) - Storage:
hcloud-volumesStorageClass - Cert Manager: enabled
- Terraform state: S3-compatible object storage (
hel1.your-objectstorage.com, bucketk8s-asxpio-main)
DNS
*.k8s.asxp.io — wildcard pointing to cluster ingress IP.
Apps
| App | Namespace | URL |
|---|---|---|
| ArgoCD | argocd |
— |
| CNPG Operator | cnpg-system |
— |
| PostgreSQL (HA) | postgres |
2 instances (CloudNativePG) |
| Forgejo | forgejo |
git.czsk.it / git.asxp.io |
| WatchParty | watchparty |
watch.k8s.asxp.io |
| VBrowser Gateway | vbrowser-gateway |
vbrowser.k8s.asxp.io |
Structure
apps/
app-of-apps.yaml # bootstrap — points ArgoCD at this directory
<app>.yaml # ArgoCD Application per app
<app>/ # raw manifests per app