Home Assistant on Proxmox in an LXC container using Debian Bullseye

Home Assistant on Proxmox in an LXC container using Debian Bullseye
Home Assistant Dashboard

Why Home Assistant

I do not have that many IoT / Smart Home devices in order to really require a powerful solution like Home Assistant. On the other hand I am not too happy with the fact that my Hue light bulbs do not come with a web accessible solution to control them and I find the Hue app as well as Homekit alone not convenient enough. This is where Home Assistant comes in, it provides a nice and simple dashboard that allows to efficiently control all the devices I have. Further the Netatmo cloud and OpenWeatherMap integration are nice add-ons.

Proxmox / LXC

Since I use Proxmox for virtualization and I wanted to run Home Assistant on it. Debian is my go-to base OS for VM hosts.

Proxmox has a nice and easy LXC (Linux Container) integration. The overhead of LXC is just negligible compared to a fully blown VM. I therefore decided to run Home Assistant inside an LXC container.

Unfortunately Debian Buster still ships with Python 3.7 which is not ideal for Home Assistant. Debian Bullseye which is close to being finally released on the other side, ships with Python 3.9 which is perfect. (The only thing holding back the release of bullseye is an issue with the installer which won't impact us here at all).

1 - Launch a Debian Bullseye LXC container

How to obtain the official Debian Bullseye LXC Template is fortunately documented here: https://forum.proxmox.com/threads/debian-bullseye-als-lxc-container-gesucht.63560/ download the image and launch a new LXC container.

2 - Install Home Assistant Core

After downloading and launching the Debian Bullseye LXC container, follow the instructions to install Home Assistant Core on Linux.

Linux
Install Home Assistant on a Linux

It's pretty straight forward, just use

python3

instead of the python3.8 command as suggested in the documentation (as we are not using python 3.8).

3 - Systemd Service for Home Assistant Core

After having installed Home Assistant Core it is unfortunately not launched with every startup automatically. I'm not sure for what benefit that is. However a quick search brought up the page below which is a tutorial for a raspi based installation:

Getting started with Home Assistant Core – Installing – Raspberryfield – IT, video games and comics

Use the service template with some minor changes:

Replace "%i" with "homeassistant" in the service file and used the correct command to load the new service file.

sudo systemctl --system daemon-reload

Then enable and launch the service.

4 - What next

Voilà we have Home Assistant running on Proxmox in an LXC container with Debian Bullseye.

The next step is obviously to complete the Home Assistant onboarding

Onboarding Home Assistant
Instructions to get Home Assistant configured.

and configure your smart home and IoT devices.

As usual don't forget to harden your installation, setup OS updates, etc.