Running a home lab is a fun and rewarding project that can enable all kinds of experiences in your home, and Proxmox is arguably the best way to do it, being a lightweight virtual environment that can run multiple services. I'm currently using it to host my own NAS alongside Home Assistant, and that's a fairly small project all things considered.

Admittedly, I'm a bit of a newbie when it comes to Proxmox, which means I've made my fair share of mistakes when trying to set it up. And if you're thinking of getting started with it too, you might also have the same risk. So, before you get started, here are a few things you should be wary of to avoid making your experience more difficult than it needs to be.

Incorrect IP configuration

A simple one to avoid

This one is very simple since you won't be able to set up Proxmox at all if it's incorrect, but it happened to me, so I wanted to bring it up. Depending on your internet configuration and ISP, when setting up Proxmox, your machine's IP may be set to an IPv6 address, but the gateway could be IPv4. These different IP formats don't work with each other, so you won't be able to progress unless you make them match.

Your best bet here is to give your machine an IPv4 address within your gateway's range. So, if your gateway is 192.168.1.1, you can give your machine the IP address 192.168.1.200/24. This will allow you to proceed with the initial setup.

Using a VM for everything

Containers exist for a reason

When you want to set up multiple services on your home lab, it may be tempting to use virtual machines to host them. VMs are fairly widespread and easy to set up, but if you're using Proxmox, you have other options that may be more efficient. Proxmox LXCs (short for Linux containers) offer a more efficient solution, which is more lightweight and won't use up as many of your system resources.

VMs have their own benefits, allowing you to run full operating systems and potentially supporting more features, but specialized containers can be perfect for all kinds of services that maybe don't need all those capabilities. By cutting back on resource usage, containers may allow you to run many more services without a major performance impact on your system, making your home lab that much more useful.

Assigning too many (or too little) resources

Make sure your projects run smoothly

When you create new projects within Proxmox, whether it's using a virtual machine or a container, you need to make sure you're assigning it the right system resources. If you give one of your projects very few CPU cores or RAM, it may be unable to run effectively, making that service potentially useless.

On the flip side, allowing your projects to access as many resources as they please can have a counter effect where each virtual machine or container is fighting to access resources on the host machine, and performance can be hindered. Many services are fairly lightweight and don't need a ton of power, so you have to find the right balance and give the appropriate resources to each project. For example, my Home Assistant VM only has two CPU cores and 4GB of RAM assigned, and even that may be more than enough based on the performance data in Proxmox.

Not backing up your setup

Make sure you can restore things if needed

Using Proxmox for your home lab isn't just great because it allows you to run a lot of services concurrently. Another big benefit is that by virtualizing a lot of these services, you can also easily create backups of their configurations, which means you can also easily recover them if anything goes wrong.

If you want to mess around with the settings of one of your VMs or containers, creating a backup beforehand means you can easily do so without fear of breaking that instance permanently. You can simply use Proxmox to restore a previous backup of that VM or container, and everything will be back to normal. The point of a home lab is also to experiment, and having this safety net means you can do that much more freely without fear of losing your data or the things you've already set up successfully.

Not enabling the community repository

You should update your hypervisor

Proxmox is a fantastic tool, but if you want to take full advantage of it, you need to keep it up to date to make sure it's got the latest security fixes and features. For that, you may need to add the community repository to your installation to ensure that you can get updates. By default, Proxmox is set up with the Enterprise repository, but if you want to get Proxmox updates without paying up, you need to enable the community repository.

Yes, these updates are technically not meant for production environments, but technically, neither is the free version of Proxmox. For your home projects, the updates from the community repository should still be more than good enough, and will be sure to keep your machine up-to-date with the latest security improvements, which can be crucial to ensure your data is safe.

Not documenting your projects

It's worth remembering

As I've already mentioned, I have a very simple Proxmox setup that doesn't require a lot to maintain or set up again if needed. Still, I've sort of documented much of my configuration through the articles I've written about Proxmox and messages I've exchanged asking for help. And really, you should do the same, even if you have a relatively basic setup.

Once you set up Proxmox, it's possible you won't be looking at those configurations for a long time, so there's a very good chance you won't remember what you need to do once something does go wrong. Documenting every aspect of your project — how you set configured certain resources, for example — means that when something does go awry, you should have a much easier time fixing things up and getting everything back up and running. Even if nothing goes wrong, simply having to set up a new home lab can be made easier in the future by having this information. Tools like BookStack make it easy to document all this information and keep it organized.

Assigning a drive to a NAS (instead of the SATA controller)

Yes, I've been there

This one is somewhat particular, but I wanted to point it out because it's something I experienced recently. I have set up a TrueNAS instance within my Proxmox virtual environment, and initially, the storage pool for the NAS was provided by assigning the HDD inside my PC to the TrueNAS VM. However, after a while, TrueNAS started reporting errors suggesting that the HDD was starting to fail, and I was unable to diagnose it.

As it turns out, in order for TrueNAS to function properly inside Proxmox, it needs to have full access to the storage controller used for the HDD, not just the HDD itself. That means you need to find out what the SATA controller is labeled as and assign it as a PCI device to the VM, removing the assigned storage. Doing it this way will ensure your NAS functions as intended, and when the drive does fail, you'll be able to have more reliable insights into what's happening.

Avoid these pitfalls

Doing something like this for the first time is both thrilling and scary, and it's important to keep your wits about you so you avoid headaches in the future. Backing up your projects, documenting them, and properly configuring everything are all important steps to making sure your home lab continues to work as it should for the foreseeable future. Depending on your use case, you might need to be even more careful, but these are some of the basics almost anyone will want to keep in mind.