Skip to content

nihalxkumar/homelab

Repository files navigation

🔬 Homelab

This repository uses Infrastructure as Code and GitOps principles to fully automate the provisioning, configuration, and continuous deployment of self-hosted services in my personal homelab.

The purpose of this homelab:

  • Self host things for freedom

  • Learn Kubernetes along the way

  • Bring jj to practice

  • Explore, Experiment, and have fun.

Explore the directories:

  • Justfile - Task runner for common operations (provisioning, kubeconfig sync, SOPS encryption, certificate verification, etc.)
  • ansible/ - Ansible playbooks for bare-metal provisioning, K3s installation, security hardening, and Tailscale configuration
  • kubernetes/ - Kubernetes manifests organized by:
    • apps/ - Application deployments managed via GitOps
    • bootstrap/ - Core cluster components (ArgoCD, etc.)
    • infrastructure/ - Infrastructure-level resources (Traefik ingress, cert-manager, DNS-01 ACME, etc.)
  • terraform/ - Terraform configurations for cloud resource provisioning
  • scripts/ - Utility scripts for automation and maintenance

Stack

Logo Name Description
Ubuntu Server Base OS for Kubernetes nodes
K3s Lightweight Kubernetes distribution
Ansible Bare-metal provisioning & node configuration
ArgoCD GitOps continuous delivery for Kubernetes
Cloudflare DNS-01 ACME challenges + DDoS/WAF protection via Tunnel
Docker Container Runtime
Grafana Observability & dashboards
Kubernetes Container-orchestration system
Traefik Ingress controller & reverse proxy (TLSStore + Kubernetes secret-based TLS)
Prometheus Metrics collection & alerting
Tailscale Kubernetes Operator & MagicDNS for secure service exposure
CloudNativePG PostgreSQL Operator for Kubernetes
NextDNS Smart and Reliable DNS resolver
Terraform Infrastructure as Code for cloud resources
cert-manager Automated certificate management (Let's Encrypt DNS-01 via Cloudflare)
SOPS + Age Secrets encryption at rest
+ jj + Git Version control with colocated .git directory
Glance Homepage dashboard & feed aggregator
n8n Workflow automation tool
DeepWiki AI-powered documentation & knowledge base
KaraKeep Bookmarks Manager
The Lounge Web Client for Internet Relay Chat
Infrastructure 6 GB RAM, 5 vCPU, 100 GB NVMe SSD

About

GitOps K3S Cluster

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors