This repository documents my infrastructure-as-code configurations for managing my homelab & machines.
k3sis used as the Kubernetes distribution for my homelab environment.metallbprovides load balancing for services within the k3s cluster.traefikserves as the ingress controller and reverse proxy for routing external traffic to services.longhornis utilized for distributed block storage across the k3s nodes.sealed-secretsmanages encrypted secrets within the Kubernetes cluster.letsencryptis configured for wildcard SSL certificates for secure access to services.ansibleis employed for automating server configuration and management.terraformmanages cloud infrastructure including Cloudflare DNS and GitHub settings.
ansible/: ansible playbooks and inventories for quick server configuration and setup.k8s/: k3s homelab management including helm charts and manifests.machines/: machine-specific configurations for my macOS and Linux setups.terraform/: infrastructure provisioning for cloud services (Cloudflare, etc.).
| Icon | Name | Description | Deployed Via |
|---|---|---|---|
| n8n | Workflow automation tool | Helmfile |
| Icon | Name | Description | Deployed Via |
|---|---|---|---|
| MongoDB (Atlas) | Managed MongoDB database hosting | MongoDB Operator | |
| MariaDB | Relational database service | Kubectl | |
| Redis | In-memory data structure store | Helmfile |
| Icon | Name | Description | Deployed Via |
|---|---|---|---|
| Jackett (planned) | Torrent indexer | Helmfile | |
| Gitea (planned) | Self-hosted Git service + container registry | Helmfile |
| Icon | Name | Description | Deployed Via |
|---|---|---|---|
| Rancher | K8s cluster management platform | Helmfile | |
| Whoami | Simple service to display client information | Kubectl |
| Icon | Name | Description | Deployed Via |
|---|---|---|---|
| Logto (planned) | Centralized OIDC provider | Helmfile | |
| Twingate Connector | Secure remote access to private network | Helmfile |
| Icon | Name | Description | Deployed Via |
|---|---|---|---|
| MinIO | S3-compatible object storage server | Helmfile |
| Icon | Name | Description | Deployed Via |
|---|---|---|---|
| Code Server (planned) | Remote VSCode instance | Helmfile |