Home Assistant on Linux: A Practical Starting Point for Kirksville Homes
Linux users can run Home Assistant OS in a supported VM or Home Assistant Container on Docker, with different maintenance and feature models that should be chosen deliberately.
If you already run Linux, there are two practical Home Assistant paths to understand:
- Home Assistant OS in a virtual machine
- Home Assistant Container
They are not feature-identical.
Choose the maintenance model first.
Home Assistant OS in a VM
Home Assistant OS is the installation type Home Assistant currently recommends for most users.
On Linux, the official documentation supports running it in a VM such as KVM.
Current minimum VM resources are:
- 2 GB RAM
- 2 vCPUs
The documented VM path requires UEFI.
Home Assistant OS includes Supervisor-managed functionality and the Home Assistant app ecosystem.
Home Assistant Container
Home Assistant Container runs Home Assistant Core in an OCI container such as Docker.
The current Docker-focused instructions require Docker Engine 23.0.0 or newer.
Container is attractive when you already manage Linux containers and want Home Assistant to fit into that environment.
The tradeoff is that it does not include the same Supervisor/apps functionality as Home Assistant OS.
Do not choose Container because it sounds more technical and assume you are getting the same system.
USB radios require planning
Zigbee and Z-Wave setups often use a USB coordinator.
That device must reach Home Assistant.
In a VM, configure USB passthrough.
In a container, map the required device into the container with the correct permissions.
Do this deliberately so a host update or device-path change does not silently disconnect the radio.
The Linux host becomes part of the smart home
If Home Assistant runs on your general-purpose Linux workstation, restarting or experimenting with that workstation also restarts part of the house.
Ask:
- Is this computer always on?
- Is it stable?
- Do I reboot it frequently?
- Does another project consume all its RAM?
- What happens during host maintenance?
For a long-lived smart home, boring reliability is more useful than maximum experimentation.
Keep configuration and backups separate
Whichever installation you choose, maintain recoverable backups of Home Assistant configuration and know how you would restore the system.
A VM snapshot or container volume is useful, but the restoration procedure should be understood rather than assumed.
Local access is the normal starting point
Home Assistant is normally accessed over the local network, commonly on port 8123.
Remote access is a separate choice.
Do not expose the service directly to the public internet simply because it has a web interface.
Which option should you pick?
Use Home Assistant OS in a VM when you want the more complete recommended Home Assistant experience while keeping your Linux host.
Use Home Assistant Container when you already understand container maintenance and are comfortable managing the surrounding services yourself.
For architecture before installation, see Building a Local Smart Home That Does Not Depend on Somebody Else's Cloud.
The simplest supported path is usually better than choosing the most complicated path merely because Linux makes it possible.
- Categories: Smart Home & Security Cameras
- Tags: #Home Assistant, #linux