There are several ways to install Home Assistant from scratch and I will show you two different methods (Home Assistant Supervised & Home Assistant Container).
What will you get from this article?
The first method – called Home Assistant Container is actually a Home Assistant running in Docker container and it is without Add-on store.
The second one is called Home Assistant Supervised with full Home Assistant experience and Add-on store.
Both methods that I’m about to show you have some Pros and Cons, so you better read the whole article and decide for yourself which one is better for you.
And before you even ask – YES, both methods can be also installed on a Raspberry Pi booting from USB drive.
⬆️ Read this if you want to know more about that topic.
Now Let’s start this:
Home Assistant Container Method
This method is officially supported and you can expect that it will work for a long time.
You will need a Docker client, just go to this official Docker page and download & install it.
For MacOS and Windows you will need the Docker Desktop from the link above.
For Linux, again from the link above choose your Linux distribution and follow the instruction.
When you are ready with the Docker client installation you will eventually need to create a free Docker user, which is an easy and straightforward task.
Next, you will need to create an empty folder on the host where the Docker is installed and where the Home Assistant will be running.
On MacOS and Linux you can use something like that, which will create a folder inside user folder. Please, adapt the folder path to your needs.
In that folder the Home Assistant configuration files will be stored when we execute the docker command.
To do so, just open a terminal/command prompt and enter the following:
docker run --init -d --restart=unless-stopped --name="home-assistant" -e "TZ=Europe/Sofia" -v ~/EMPTY_FOLDER_ON_YOUR_HOST:/config -p 8123:8123 homeassistant/home-assistant:latest
That command means:
- Download and run the latest Home Assistant Docker image as container named “home-assistant”.
- Expose port 8123 from the Docker container to the host
- Use Europe/Sofia as time zone
- Try to always restart this container if it’s stopped for any reason, unless it is manually stopped by you.
When you run this for the first time you will need Internet connection for the Home Assistant image download. This will take you some time depending of your Internet speed.
When all finish you can open a new browser/tab and enter the following URL:
Replace YOUR_HOST_IP with your real host IP and you will be greeted by the Home Assistant welcome page where you can create a user.
Home Assistant Supervised Method
UPDATE: Feb 2021
This method described here will most probably still work, but the menu is a little bit different and it may require some troubleshooting. That is why I highly suggest you to use the method described in my new article 👇👇👇
Hey, have you read what I said about my new article above? If not go ahead and read it. If you read the update/warning and you still want to try the IOTstack – keep reading.
Please keep in mind that the Home Assistant Supervised method was deprecated, but shortly after was put back in support.
Nevertheless there is still no official Home Assistant Supervised installation guide until now. That means this method may stop working at some point in the future, but you don’t have to care too much.
If once successfully install your Home Assistant using the supervised method – you will be able to update your installation from within Home Assistant afterwards.
Final words if you are still in dilemma whether to use this – I just want to say that I used this method for several years in my home and I had some issues which I believe was due to SD card corruption in my Raspberry. Everything else was working flawlessly.
Enough sweet talks, let’s get to the action. Open a terminal and type the following command to update your package manager.
sudo apt-get update
After that you have to install some packages with the following command
sudo apt-get install network-manager apparmor-utils git -y
Chances are that you are already have it, so don’t be surprised if that is the case
Next we have to clone the IOTstack project to make our life easier with Home Assistant Supervised installation.
Just clone the repo by executing this:
git clone https://github.com/SensorsIot/IOTstack.git ~/IOTstack
To start the Menu:
cd ~/IOTstack && bash ./menu.sh
Subscribe button still in support?
Hey, As far as I know the peyanski.com newsletter is still in support.
You can test it by smashing the SUBSCRIBE button.
If you receive a confirmation mail, and confirm your registration you should receive a bonus material from me (Smart Home Guide Article)
Let’s continue forward:
You will see Norton Commander style menu (OMG I’m getting older) where you can first install Docker if there is such need and then you can choose the “Install Hass.io (Requires Docker)” item from the menu.
Just hit enter and at some point you will be asked to choose your device type.
For AMD/Intel based computers you can choose “qemux86” or “qemux86-64” for raspberries you have to choose… what do you think? 🤔
The respective raspberry model of course 😉
Next, you can open a new browser/tab and enter the following URL:
Replace YOUR_HOST_IP with your real host IP and you will be greeted by similar page (see below) saying that you can wait up to 20 minutes for your Home Assistant supervised installation to finish.
You can hit the refresh button from time to time or just relax and wait, but the best will be to watch some of my videos ➡️ https://youtube.com/kpeyanski
while you are waiting.
Home Assistant with Virtual Machine Method
There is also another supported installation method (third one) of Home Assistant with full functionalities.
This method was previously known as “Hass.io”, and includes the HA Operating System (HassOS). It can be run on various single-board computers like raspberry pi or in a virtual machine.
Check my detailed video article if you want to know more about this method.
Question of the Day
What Home Assistant installation method you like best?
Bonus points if you say why!
Let me know what you think in the comments below.
Support my Work
If you like what you see so far and you want more content like this you may want to become one of my supporters (actually the first one) check my support page.
Any other sort of engagement on this site and my YouTube channel does really help out a lot with the Google & YouTube algorithms, so make sure you hit the subscribe, as well as the Like and Bell buttons If you enjoy this Home Assistant Supervised and Container video article.
I really hope that you find this information useful and you now know how to install Home Assistant from scratch using Home Assistant Container and Home Assistant Supervised methods.
Stay safe and don’t forget Home Smart, But Not Hard!
Thank you for reading, and see you next time.