My steps to success for Hass.io on Intel NUC

@Lunkobelix

1.) if you have HA already installed and running, Backup all your yaml files, lovelace config, etc to your PC, USB or HDD. If not, go to step 2.
2.) Install Ubuntu or similar Linux OS (I use Ubuntu 16.04 LTS on my NUC)
3.) Follow this guide , specifically from the line “To prepare your machine for the Hass.ioinstallation, run the following commands:”

sudo -i
apt-get install software-properties-common
add-apt-repository universe
apt-get update
apt-get install -y apparmor-utils apt-transport-https avahi-daemon ca-certificates curl dbus jq network-manager socat
curl -fsSL get.docker.com | sh

curl -sL "https://raw.githubusercontent.com/home-assistant/hassio-installer/master/hassio_install.sh" | bash -s

4.) Copy your yaml files to the NUC, normally in the location /usr/share/hassio/homeassistant

That whole process will take 30mins and you are up and running.

Extra Step, install Portainer to manage your Docker containers.

sudo docker run -d -p 9000:9000 --name portainer --restart always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer

Simply follow this excellent guide:

1 Like

Thank you both @kanga_who and @ffm777!

But since I know nothing about Ubunto it would have felt simpler to just run Hass.io, I’m a bit concerned that I won’t get security and so on set up in a proper way and that the server will use more resources compared to just running Hass.io. I will not use it for anything else than Hass.io.

But since I then need to buy an expensive SSD case in order to connect it to my computer maybe this is the best way.

Is there no simple way to mount the Hass.io image to a brand new SSD without taking the SSD out of the NUC but still only running Hass.io on the NUC (not installing Ubunto on the SSD)?

Hass.io needs an operating system to run on top off.

Make a bootable Ubuntu USB very easily using Etcher, then connect it to the NUC and install Ubuntu.

Then connect to the NUC via SSH from your PC or laptop, and run the commands I posted above.

Done. It’s a very simple process if you copy paste those instructions.

Sounds easy but since I know nothing about Ubuntu I think the easiest way is to take the SSD out of the NUC, mount the Hass.io image and then put it back. I need to buy a SSD enclosure but think that’s th way to do it then. Thanks anyway, I really appreciate it!

What you are talking about is more difficult, but sure, do as you please.

You’ve been provided simple copy/paste instructions.

Yeah, I will give it a try. So what you are saying is that if I do the Hassio.io image from here (https://www.home-assistant.io/hassio/installation/) I will get Ubunto anyway, so there is no way of setting this up with “just” Hass.io? I’m looking for an as minimal installation as possibe with just the absolut core of software needed to get it runnning.

In that case it makes sense to go with your approach. As I wrote, the SSD case is just as expensive as the SSD.

Final question, if I do it like you suggested, what is the difference compared to following the guide that @ffm777 posted (https://www.juanmtech.com/set-up-hassio-in-docker-and-in-an-ubuntu-server/)?

Both guides are almost the same and achieve the exact same result, one just has much more detail.

What you need to understand is that Hass.io needs an operating system, otherwise, what loads drivers, controls your NIC, CPU memory management etc.

You have to have an OS.

What you are talking about trying to do is like trying to load Microsoft Office onto a laptop that doesn’t have Windows on it.

Haha, makes sense :slight_smile:

So the Hass.io image on the link I posted containes the same version of Ubuntu?

That link is generic installation instructions, it doesn’t give you Ubuntu.

Not following now. If I download the image here (https://www.home-assistant.io/hassio/installation) and flash it to a SSD or SD that will be enough for running Hass.io? And in that case it has to bring an OS as well?

How many more times do I need to say, you need to install an operating system?

Those images are just versions of Hass.io for different machine types.

Hass.io is Home Assistant in a Docker container. Docker is software, that runs on an operating system, the same as home Assistant is software, that runs on an operating system.

You. Need. To. Install. An. Operating. System.

Been watching this video (https://www.youtube.com/watch?v=gsanqLTU5J0) since I initially planned on getting a Raspberry Pi. Thought the image file was similar (and just a file to flash to the disk) but this one contains the OS, and the NUC file doesn’t, that is what confused me. Sorry for bothering you.

That would be HassOS that hassio is running on.

Yes it’s possible to flash directly to an SSD, and you don’t need a case for it, assuming you have a desktop computer. Just plug it into the sata port on your motherboard.

Honestly HassOS isn’t worth it. Just run normal Ubuntu and hassio.

Thanks for clarifying! And to be 100% sure, when installing Ubuntu I get the option to partition and format the drive so no need to buy a case and connect to my PC first?

The images on https://www.home-assistant.io/hassio/installation under the “As an image for your device” section are Hass.io running on HassOS (the images include the HassOS Operating System).

Since your initial post specifically stated that you only want Hass.io running on the box, that means getting the case and using the NUC image, or as you’ve mentioned, booting a live Linux Distro and burning the Hass.io/HassOS image (I don’t have instructions for that - I pieced it together from elsewhere in this thread and a couple of others that I didn’t save as it didn’t work for me, per the below).
Note that there’s no guarantee that will work for you though as there’s variation between the NUCs that the HassOS doesn’t necessarily accommodate. I ended up giving up on getting the NUC Hass.io/HassOS image working on my NUC, and so went the Ubuntu route that others have suggested - which is an entirely different approach from what you were originally asking about.

Installing Ubuntu on the NUC, followed by Hass.io per the instructions that the others have linked to (just Hass.io running in a docker container - not Hass.io running under HassOS, since you’re using Ubuntu as your OS) gives you a fairly similar result, but you won’t need to flash the image directly to the drive, so no need for the case.
It means also having to maintain the Ubuntu environment (e.g. system updates) outside of Home Assistant, but it also gives you some flexibility to run more stuff on the NUC if you end up wanting to do that.

2 Likes

THIS! That is exactly what I was hoping to avoid. To keep it simple and with a bare minimum of “server maintenance”. So you are saying that the image under your first link actually contains an OS, Hass OS, and that would be enough?

A bit afraid of getting Ubuntu without kowing how to keep it up to date, secure and protected since the NUC will be connected to the internet. But I guess that applies to Hass OS too…

Correct, but far, far, easier, hence making that suggestion.

It’s not worth the bother of stuffing about using a NUC image and trying to debug HassOS issues on a per NUC basis.

Install Ubuntu, run the Hass.io script and done. When I say it takes under 30mins, I’m not joking. It’s fast, easy, repeatable, and reliable.

Run sudo apt-get update && sudo apt-get upgrade - y once a Month via SSH, that’s almost all the maintenance you need to do. It really is VERY simple. VERY.

Just to add to the good suggestions made by others above: Do you already have a running HA install and want to shift to a NUC because you are running out of resources? I’m asking because if you are just getting started with HA, then why not go for a Raspberry Pi running HassOS first? This is really the easiest way to run HA and will serve you quite well for some time. A NUC is only required if you plan to run tons of other things in parallel to HA. Installing just HassOS on a NUC is a total waste of resources.

1 Like