Installing Home Assistant on Proxmox as a virtual machine (VM) offers a powerful and flexible solution for managing your smart home. Proxmox, an open-source virtualization platform, allows you to run multiple virtual machines on a single physical server. This is particularly useful if you want to run different applications and services in isolation from each other. In this guide, I will show you step-by-step how to install Home Assistant on Proxmox in a VM. We will discuss the necessary prerequisites, go through the installation of Proxmox on the hardware, and finally set up Home Assistant as a virtual machine. With this method, you can take advantage of both systems and make your smart home more efficient and secure. Ready to take your smart home to the next level? Then let’s get started! 😊
Why Home Assistant VM and not LXC
In fact, there are fewer problems when passing through USB sticks to the VM. For me, the Conbee III and previously the ConBee II were recognized without any issues, and I was able to select the stick and assign it to ZHA.
Prerequisites
Install Proxmox
First, a Proxmox VE installation is required. I have an old Optiplex 7010 with an i5 running Proxmox. You can find out how I installed Proxmox in my article Installation Proxmox VE auf Dell Optiplex oder anderem PC.
Proxmox VE Helper Scripts
Use the “Proxmox VE Helper Scripts for a Home Assistant VM” from the Proxmox Community Scripts on GitHub. If you have little experience with Proxmox, this is definitely the best way to get to your goal quickly! The hard drive or SSD of the Proxmox server must have at least 32 GB of free space, which cannot be changed during the installation process.
Simply copy the instruction to the clipboard:
Create VM on Proxmox
Select the Proxmox node and open a shell by clicking the ‘>_ Shell’ button.
Paste the command into the shell window that opens. It’s best to paste it using the right mouse button and the context menu. It should look something like this:
After executing by pressing Enter, it starts immediately. A prompt will appear asking if you want to start creating the VM:
After confirming with <Yes>, another prompt will ask if you want to create it with “Default Settings.” I recommend this, I did it this way and it works well. After confirming, the VM creation starts immediately. Your console should look something like this:
My virtual machines were assigned the number 113 and started. The first start of the VM takes a while as Home Assistant sets itself up.
This installation was accessible after about 5 minutes via the address [Your-IP]:8123. You can find out the IP of your Home Assistant VM in the “Summary” tab of your VM. I actually recommend rebooting the VM once everything has settled down and the Home Assistant page is accessible. Then the memory usage should stabilize at around 65%:
In my case, the address would be 192.168.178.97:8123 to access this page and start Home Assistant:
First Start of Home Assistant
I have already briefly explained the initial setup or first start of Home Assistant in the article “Installing Home Assistant on Raspberry Pi and the Easy Way!”
Default Settings of the VM
As mentioned, I also created my Home Assistant smart home with the default settings. With over 40 devices and numerous different integrations such as ZHA and Zigbee2Mqtt, I still only need 65% memory and moderate CPU power between 3 and 5% in normal operation. If it ever needs to be more, I will let you know in a blog post.
Assign USB Stick to Home Assistant VM
If, for example, a ConBee III Zigbee USB stick is plugged into the Proxmox server, it may need to be assigned to the corresponding VM. To do this, go to the Home Assistant VM in Proxmox, select “Hardware,” and then “Add USB Device.” Then select the appropriate USB stick, in my case, the ConBee III:
Hardware in Home Assistant
To display the hardware and thus the USB sticks in Home Assistant, go to “Settings,” then “System,” then “Hardware,” and click on “All Hardware.” Here you can see the two USB sticks that are plugged in and assigned to the VM:
This is important to know because the displayed ID is the one you need to enter in ZHA or Zigbee2Mqtt, for example:
Go to “Settings,” then “Devices & Services,” and call up “Zigbee Home Automation” (ZHA). If ZHA is missing, it must first be added via the “Add Integration” button. In my case, there are 32 devices in ZHA; simply click on the integration and then configure it.
In the configuration, you can see the ID of the used USB stick under “Serial Port”:
That’s it. Have fun with your Home Assistant VM on the Proxmox server!
If this article helped you, and you want to support my work, I would really appreciate a small token of appreciation. A coffee would be a wonderful gesture to keep my motivation and energy up so that I can continue to create helpful content for you and other readers. Your support means a lot to me and helps me to continue my passion for writing and sharing knowledge. Thank you in advance! Buy me a coffee.