https://github.com/ravilushqa/homelab
Homelab automation and management using Proxmox, Kubernetes, Talos, and Terraform
https://github.com/ravilushqa/homelab
api-gateway cilium homelab kubernetes proxmox talos terraform traefik
Last synced: about 1 month ago
JSON representation
Homelab automation and management using Proxmox, Kubernetes, Talos, and Terraform
- Host: GitHub
- URL: https://github.com/ravilushqa/homelab
- Owner: ravilushqa
- Created: 2024-11-07T08:50:35.000Z (11 months ago)
- Default Branch: main
- Last Pushed: 2025-08-29T21:50:56.000Z (about 1 month ago)
- Last Synced: 2025-08-29T23:24:57.603Z (about 1 month ago)
- Topics: api-gateway, cilium, homelab, kubernetes, proxmox, talos, terraform, traefik
- Language: HCL
- Homepage:
- Size: 162 KB
- Stars: 2
- Watchers: 1
- Forks: 1
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# HomeLab Project 🏠💻
This repository represents my **HomeLab setup**, showcasing an integration of various modern technologies for managing a
Kubernetes-based infrastructure. It includes configurations for virtualization, networking, storage, and application
deployment.---
## Core Technologies 🛠️
- [Proxmox](https://www.proxmox.com/) Server management and virtualization.
- [Terraform](https://www.terraform.io/) Infrastructure as Code.
- [Talos Linux](https://www.talos.dev/) Kubernetes OS.
- [Cilium](https://cilium.io/) Network security and observability.
- [Traefik](https://traefik.io/) Edge Router due to its simplicity and TLS passthrough capabilities and my router limitations.
- [Cert-Manager](https://cert-manager.io/) Certificate management.
- [Proxmox CSI](https://github.com/sergelogvinov/proxmox-csi-plugin) Storage provisioning.
- [Sealed Secrets](https://github.com/bitnami-labs/sealed-secrets) Encrypted secrets management, which is safe to store in Git.
- [Gateway API](https://gateway-api.sigs.k8s.io/) Next generation of Kubernetes Ingress.
- [Grafana Cloud](https://grafana.com/) Monitoring and observability of the cluster.
- [ArgoCD](https://argo-cd.readthedocs.io/) GitOps continuous delivery tool for declarative Kubernetes management.---
## Applications 📦
- [Home Assistant Operating System (HAOS)](https://www.home-assistant.io/installation/operating-system) - Home automation.
- [Immich](https://immich.app/) - Google Photos alternative.
- [Pi-hole](https://pi-hole.net/) - DNS and DHCP server. (currently under the scope of the repository)
- many more to come...---
## Repository Structure 📂
```shell
.
├── k8s
│ ├── apps # applications
│ │ ├── external # external-facing applications
│ │ └── internal # internal services
│ └── infra # k8s infrastructure
│ ├── argocd # gitops deployment
│ ├── network # networking components
│ ├── security # security components
│ └── storage # storage components
└── terraform
└── modules
├── monitoring # grafana cloud monitoring
├── proxmox # talos vm deployment
├── proxmox-csi-plugin # proxmox storage for k8s
├── sealed-secrets # k8s secret management
├── talos # talos cluster deployment
└── traefik # traefik tls passthrough lxc container
```## GitOps with ArgoCD 🚢
The cluster uses ArgoCD for GitOps-based continuous delivery. All applications and infrastructure components are automatically synchronized from this Git repository.
### Key Features:
- **UI Access**: https://argocd.ravil.space
- **Auto-sync**: All applications are configured for automatic synchronization
- **Self-healing**: Automatic correction of manual cluster changes to match Git state
- **Application Structure**:
- Infrastructure components (`k8s/infra/*`)
- Internal services (glance, isponsorblocktv)
- External applications (`k8s/apps/external/*`)### Quick Commands:
```bash
# Get ArgoCD admin password
make argocd-password# Restart ArgoCD components
make argocd-restart# View application status
kubectl -n argocd get applications
```## 🚀 Next Features
Planned features for this project include:
- [**OIDC**](https://openid.net/connect/): OpenID Connect integration for authentication. such as [Authelia](https://www.authelia.com/)
or [Zitadel](https://github.com/zitadel/zitadel).---