https://github.com/mkuthan/homelab-public
Homelab infrastructure as a code (IaaC)
https://github.com/mkuthan/homelab-public
ansible homelab iaac self-hosted terraform
Last synced: 13 days ago
JSON representation
Homelab infrastructure as a code (IaaC)
- Host: GitHub
- URL: https://github.com/mkuthan/homelab-public
- Owner: mkuthan
- License: agpl-3.0
- Created: 2025-01-18T19:54:01.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2025-04-11T14:52:07.000Z (14 days ago)
- Last Synced: 2025-04-12T01:02:59.754Z (13 days ago)
- Topics: ansible, homelab, iaac, self-hosted, terraform
- Language: HCL
- Homepage: https://mkuthan.github.io/tags/#homelab
- Size: 43 MB
- Stars: 492
- Watchers: 4
- Forks: 24
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Homelab by Marcin
Welcome to my homelab project. This repository contains configurations and documentation for my self-hosted infrastructure. The purpose of this homelab is to experiment with and manage various technologies and services in a controlled environment, emphasizing self-hosting, simplicity, and Infrastructure as Code (IaaC) principles.
Manifesto:
* Self-host services and data
* Keep it simple, stupid (KISS)
* Define Infrastructure as a Code (IaaC)Primary homelab based on Proxmox cluster and virtualization:

First homelab built on Raspberry Pi years ago, still in use:

## Infrastructure as a Code
Terraform defines the following resources:
* Linux containers (LXC) on Proxmox
* Virtual private server in GCP
* Offsite backup buckets in GCP
* Tailscale access control lists (ACLs)
* See [terraform](terraform) directory for more detailsAnsible playbooks manage all the services and configurations, for example:
* Adguard DNS
* Apt Cacher NG
* Backup Ninja
* Docker
* Frigate
* Grafana
* Grafana Agent
* Gramps
* Hyperion NG
* Immich
* Jellyfin
* Kodi
* Loki
* Mailrise
* Mosqquitto
* NUT
* Omada Software Controller
* Open Web UI
* Paperless NGX
* Proxmox Backup Server
* Prometheus
* Raspotify
* RClone
* Samba
* SearXNG
* Shairport
* Stirling PDF
* Tailscale
* Traefik
* Transmission
* Uptime Kuma
* Vaultwarden
* Whoogle
* Zigbee2MQTT
* see [ansible/roles](ansible/roles) for more## Documentation
If code doesn't tell the whole story, documentation does.
Here are some notes on various topics:* [Network](docs/network.md): VPN, DNS, VLAN
* [Hardware](docs/hardware.md): network equipment, servers, disks, ups
* [CCTV](docs/cameras.md): cameras, motion detection
* [IoT](docs/iot.md): ZigBee coordinators, sensors, switches
* [Home Assistant](docs/ha.md): Automations, dashboards
* [Proxmox](docs/proxmox.md): VMs and LXCs management
* [Backup](docs/backup.md): Proxmox backup server, offisite backups
* [SSH](docs/ssh.md): Remote access to servers
* [Media](docs/media.md): TV box, streaming, audioAs always, I encourage you to visit my blog for more details [https://mkuthan.github.io/tags/#homelab](https://mkuthan.github.io/tags/#homelab).