Streamlined homelab setup with automated provisioning and updating of my workstations and servers
About • Getting Started • Contributing • Support • Security • Authors & Contributors • License
A homelab setup that can provision and update my workstations, servers and services they are hosting through the magic of infrastructure as code and a fully automated, seamless CI/CD pipeline.
- Infrastructure as code using Ansible, Docker Compose and Jinja
- Testing using Molecule, Vagrant and VirtualBox
- CI/CD using GitHub Actions with self-hosted runners
- Network infrastructure using UniFi, Pi-hole and Nginx Proxy Manager
- Host hardening using DevSec Hardening
- Observability and Monitoring using Netdata, Graylog, Grafana, Prometheus, Elasticsearch and Portainer
- Home automation using Home Assistant and Node-RED
Install the following software
Install tools and dependencies
just install
Create and configure hosts locally
just run
Log in to a locally created host using just login <HOST>
, replacing <HOST>
with the name of the host you want to access
just login server-pi
Remove locally created hosts
just down
To contribute, check out the Contributing Guidelines and the Developers Guide. Thank you for being involved!
Need help? The Support Page can provide information on how to get in touch.
You can refer to the Security Policy for reporting vulnerabilities and other security-related matters.
This project was created by Aki Kanellis.
See the Contributors Page for a complete list of all authors and contributors.
This project is licensed under the MIT license.
See LICENSE for more information.