This page dives into the specific configurations of each virtual machine in my homelab. From operating system choices and their purpose to resource allocations and networking setups, here's everything you need to know about how these VMs are tailored for performance and functionality.
Each VM is built with a specific operating system chosen to align with its role:
Plex Media Server
Nextcloud Instance
Pi-hole DNS Server
Development and Testing VM
Minecraft Server
Reverse Proxy and Web Services
Automation and CI/CD Pipeline VM
Each VM has been optimized to balance performance with available resources on my Proxmox host:
VM Name | CPU Cores | RAM | Disk Space |
---|---|---|---|
Plex Media Server | 4 | 8 GB | 500 GB (ZFS) |
Nextcloud Instance | 2 | 4 GB | 200 GB |
Pi-hole DNS Server | 1 | 1 GB | 20 GB |
Development & Testing VM | 4 | 8 GB | 100 GB |
Minecraft Server | 4 | 6 GB | 50 GB SSD |
Reverse Proxy | 2 | 2 GB | 10 GB |
Automation CI/CD Pipeline | 6 | 12 GB | 250 GB |
The allocations are periodically reviewed to ensure no single VM is overprovisioned or under-resourced.
Networking is a key part of my homelab design. Each VM has been assigned a specific configuration based on its purpose:
VM Name | Network Type | Purpose |
---|---|---|
Plex Media Server | Bridged | LAN integration for media streaming. |
Nextcloud Instance | NAT | External access for cloud services. |
Pi-hole DNS Server | VLAN | DNS for segmented networks. |
Development VM | Bridged | Access to test internal services. |
Minecraft Server | NAT | External connections for multiplayer access. |
Reverse Proxy | VLAN | HTTPS traffic routing between networks. |
CI/CD Pipeline | Bridged | Direct communication with repositories. |
With careful attention to operating system selection, resource allocation, and network design, these VMs form a robust and flexible homelab. Each configuration has been fine-tuned to ensure optimal performance for its purpose while maintaining scalability for future needs. For more insights into how I use automation tools to streamline VM creation and management, check out the Automation with Cloud-Init and Templates page.