Tech / IT Support · intermediate
Homelab as Code: Proxmox, Terraform, Ansible, and CI
A homelab you can rebuild from a Git repository — Packer builds VM templates, Terraform creates the virtual machines on Proxmox, Ansible configures every service, and a CI pipeline runs the whole thing on push. Infrastructure the way modern operations teams actually run it.
Project overview
The difference between a sysadmin and an automation engineer is whether the infrastructure lives in a repo. Terraform, Ansible, and Linux are in the top tier of entry-level infrastructure skills for 2026, and a rebuildable homelab proves all three with something you can demo in an interview.
Real-world use case
A small business runs a dozen internal services on one server. When it dies, the replacement is rebuilt from the repo in under an hour, identical to the original, with no one remembering how it was configured.
Tools and technologies
- Proxmox VE
- Terraform
- Packer
- Ansible
- cloud-init
- GitHub Actions or GitLab CI
Skills you can demonstrate
Infrastructure as Code, Configuration Management, Virtualization, CI/CD for Infrastructure, Linux Administration
Build roadmap
- Install Proxmox and set up access
Proxmox on a spare machine or nested in a VM. Create an API token for automation with the minimum permissions it needs. - Build a template with Packer
An Ubuntu Server template with cloud-init enabled. Boot a VM from it manually to confirm SSH and networking work before automating. - Create VMs with Terraform
Define three VMs from the template with static IPs and SSH keys. Apply, destroy, and apply again — the repeat is the point. - Configure with Ansible
Roles for a base hardening profile, Docker, and one real service such as a monitoring stack. Run the playbook twice and confirm the second run changes nothing. - Wire the CI pipeline
A pipeline that validates, plans on pull requests, and applies on main. Store the Terraform state and secrets outside the repo and document where. - Do the full rebuild
Destroy everything and rebuild from the repo. Time it. Write the README with the architecture diagram and the rebuild instructions.
Ways to extend the project
Add drift detection — a nightly job that runs Terraform plan and Ansible in check mode and opens an issue when reality differs from the repo.
How to showcase your work
- GitHub: The full repo, a README with the architecture diagram and the one-command rebuild instructions, and a CI badge.
- LinkedIn: Record a timelapse: delete the VMs, push to main, watch the pipeline rebuild everything and the services come back.
- Resume: List the tools in the order job posts do: "Managed a Proxmox environment with Terraform, Packer, and Ansible through a CI pipeline."