Skip to content

lctrt/homelab

Repository files navigation

Homelab

I created this homelab to learn tools and techniques around platform engineering. This is a place of experimentation.

flowchart TB
  Laptop["Laptop<br/><small>Admin workstation</small>"]

  subgraph Proxmox["Proxmox host"]
    direction LR
    subgraph DockerVM["Docker VM"]
      Registry["Private registry<br/><small>TLS · local CA</small>"]
    end
    subgraph K3s["k3s cluster — 1 control plane + 2 workers"]
      direction TB
      Traefik["Traefik<br/><small>Ingress</small>"]
      GitOps["Forgejo · Woodpecker · ArgoCD<br/><small>Git · CI · GitOps sync</small>"]
      Monitoring["kube-prometheus-stack<br/><small>Prometheus · Grafana</small>"]
      App["PageTurner (Helm chart)<br/><small>Go · React · Postgres · Redis</small>"]
    end
  end

  Laptop -->|ssh · kubectl| Proxmox
Loading

Stack

Foundation Layer

  • Proxmox: I only have one computer for this project, Proxmox allows me to have a virtualized cluster. - read more
  • K3s: a lightweight kubernetes distribution - read more
  • Traefik: Integrated with K3s, for Ingress and proxy - read more
  • Docker Private Registry: where I store the container images - read more

GitOps Layer

  • Forgejo: I run a forgejo instance locally to store my homelab repositories
  • Woodpecker: The pipeline runner
  • ArgoCD: The main tool to manage my k3s app deployments

read more

Monitoring Layer

  • Prometheus: Metrics collection, deployed through the kube-prometheus-stack Helm chart
  • Grafana: Dashboards on top of Prometheus, exposed through Traefik

read more

The Apps Layer

  • Pageturner: Deployed as a Helm chart, this is a homemade reading manager - read more

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors