Best way to install on a NUC

Hello,

I am planning on buying a NUC to run Home Assistant.
What is the best way to install? I read things like Proxmox, Docker, etc. It’s all kind of new to me, so I would like to know what you would recommend. Should or shouldn’t I use Proxmox for instance?
And if there are other things I should take into account just let me know!

Thanks in advance!

You can do as @m0wlheld suggested if you want a dedicated machine for Home Assistant. You may want to make more use of the resources of your NUC and run other VMs. Then Proxmox is a good plan.

I have a weak little Celeron NUC and I run Proxmox. I have a Debian VM with Docker for all my Home Assistant, Node Red, and other home automation stuff. Plus a few LXCs for things like VPN, Unifi, and PiHole. Works really well, easy to backup, and very configurable on different VLANS. Depends on your use case though. A dedicated machine may suit you well if thats all you need.

I just pointed to the official guides. I do not suggest using a NUC as a HA “applicance” using Home Assistant OS - it’s a waste of resources. My way is to run HA Container using Docker on an OS of my choice. HA is just one application of may.

I don’t want to make it a dedicated machine, but want to use it for more in the future. But first things first and that would be getting Home Assistant up and running… However, I am not sure on which path to follow exactly…

Then learn Docker basics and go for HA Container. You won’t have (any trouble with) supervisor and add-ons.

If you want to join the endless number of users with questions about supervisor, HACS and add-ons, use Debian Buster as operating system and go for HA “supervised”.

And yes - I have reservations about the supervisor variants.

With Proxmox you can install Home Assistant core on Docker or run a VM with HassOS. Gives you some flexibility to see what you like. There’s a learning curve no matter which direction you go though.

I think I would like to install HA supervised as I would actually like to use the addons and snapshots. Would that be an option with Proxmox for instance?

Would this be the best way to do it?

“Home Assistant Container”

I have read through the post and it is basically what I did. I was up and running in less than an hour. I also created a template allowing me to create a second instance to test some add-ons and features prior to doing in my production environment.

I particularly like the script used to install the virtual machine. It removes a number of manual processes for importing, converting, and loading the disk image into Proxmox. This coming from a guy that has done those manually in the past.

Hmm … I was mistaken expecting that Home Assistant Supervised is explained on the NUC page referenced above. Instead it’s mentioned at the generic Linux instructions.

With that type of installation you get Supervisor and Add-On-store. And you are entitled to post the “Newbie here. Cannot connect to Home Assistant. Help!” welcome post.

I cant keep up anymore.

Then read the installation introduction on home-assistant.io

  • “Home Assistant Core”: Home Assistant core application, running “natively” on an existing operating system. Requires Python 3 to be installed. No Supervisor, no add-ons.
  • “Home Assistant Container”: Same as above, but wrapped into a Docker container image, providing all the dependencies. Runs on any operating system that supports Docker. Yet, no Supervisor, no add-ons.
  • “Home Assistant Supervised”: Requires / supports only a pre-installed Debian Buster Linux and uses a script to install and run the Supervisor (which in turn runs Home Assistant Container and other containers).
  • “Home Assistant OS”: Same as above, but comes with a minimal operating system. Replaces any existing OS on the target platform. Turns platform into an “appliance”. Very convenient, but mostly prevents platform’s use for anything other than Home Assistant.

This is an excellent reference also.

1 Like

To OP @rednas :
I would recommend running Proxmox on your NUC box, and as a start, go with HassOS VM.

If you are happy, then great. You could still play with whatever other things you like in other VM (with or without docker) under Proxmox.
If you find the HassOS VM approach limiting / not flexible enough to your liking / not good enough in your use cases, then the second thing you could try would be the “Home Assistant Supervised” as @m0wlheld mentioned above.
And then if you don’t like the idea of Supervisor or add-ons, then go with “Home Assistant Container” or “Home Assistant Core”

Makes sense?

I followed the Installing Home Assistant Supervised on Debian 10 - Community Guides - Home Assistant Community (home-assistant.io) guide for installing it on my Intel NUC that is running Debian as main OS with several other programs all in docker containers.

Interesting about the view on cost (of a NUC) and dedicating one to HA (ie running an image, and not Docker). Given people can (and do) spend many hundreds (or thousands) of $/£/€ on end points/devices etc, the cost of a dedicated machine pales into insignificance at that point.

Whilst I have access to RPi devices, I chose to go down the Celeron 4000 route, and that, plus the SSD and 8Gb RAM was under $200 in total. It’s easily future proofed for what I’m doing and also means I have zero performance or capacity concerns for the foreseeable future.

This isn’t in any way a criticism of people choosing other installs (Docker, VM, Supervised, Container etc), but I would have thought cost was the least of the concerns when choosing what device to run HA on.

For me, the cost of a dedicated NUC as Linux server was to serve sever tools that would be to much for only a raspberry. I did go the docker route so I have still full control of the NUC.

Running:

  • Emby ( media server software like plex so the hardware has to be better than rasp )
  • Home Assistant
  • Pi-Hole
  • Unifi controller
  • SBFspot ( puts solar power into online )
  • Calibre ( book management server )

So for me a raspberry pi was no longer enough ( I was running with SSD already ).