CA
carnivuth/labcraft
homelab provisioning and maintenance operations
Labcraft
Infrastructure as code for my proxmox virtual environment instance.
flowchart LR
A[laptop]
B((github repo))
subgraph proxmox_host
C[vms]
D[containers]
end
A -- push commits --> B ~~~ proxmox_host -- propagates changes --> C & D
Why this
The goal of this project is to manage my personal proxmox instance in a git ops way with declarative infrastructure and configurations, to achieve this goal the following tech stack is deployed:
- terraform to provision qemu managed virtual machines and LXC containers
- docker to manage services for personal use
- ansible to automate provisioning operations
- git to version the infrastructure state
- bash scripting for utilities and workflows
Features
- Auto provisioning of vm and containers with DNS already configured and other basic utilities
- Deployment of docker compose sets of services
Concepts and problem modeling
Refer to the basic concepts page
Installation
Refer to the installation page
Create new contariner/virtual machine
Refer to the infrastrucure page
Backup management
Refer to the backup page
Deploy new docker services
Refer to the new docker service deployment page