Hass.io via Docker

I ssh’d into my OMV computer and ran the generic install script:

curl -sL https://raw.githubusercontent.com/home-assistant/hassio-build/master/install/hassio_install | bash -s

follow the configuration instructions on this video to map the /config location to some place on your OMV computer:

I went to my.omv.ip.address:8123 and home assistant was running.

I had to disable the SMB share on OMV and enable the samba addon in home assistant to upload my latest snapshot from my raspberry pi. Once that was uploaded, I added all my 3rd party addon repositories and restored.

I set the static IP address of my raspberry pi to the OMV computer. DuckDNS automatically started working.

Finally, I enabled SMB on the OMV computer and disabled the samba addon in Home Assistant.

I’m still trying to figure out the SMB setup but I have home assistant running and can flip back and forth for the time being.

1 Like

Could you explain how to run script in docker?

You don’t run it in docker you run it from the command line.

How? I have tried from the command line.
Please have a look at this post:

Thanks in advanced!

Hello guys
I will try this week to create a step by step on how to do it in OMV.
I will keep you posted.
:wink:

1 Like

How to Install Hass.IO in OMV?

  • I’m currently running OMV on an ODROID XU4/HC2 (ARMV7)
  • Open your OMV webpage
  • Enable SSH
  • Connect via SSH to the OMV
  • Execute the following cmd:
apt-get install -y apparmor-utils apt-transport-https avahi-daemon ca-certificates curl dbus jq network-manager socat software-properties-common
  • Then:
curl -sL "https://raw.githubusercontent.com/home-assistant/hassio-build/master/install/hassio_install" | bash -s -- -m odroid-xu -d "/sharedfolders/AppData/HA"

Note: The above share ( "/sharedfolders/AppData/HA” ) it’s a share that I can access remotely later via SMB(as example) to have access to the HA configuration.
Also, the above Hass.IO version it’s special for my device ( odroid xu4 ), you can check in the following page, what’s the version according your device: https://github.com/home-assistant/hassio-build/tree/master/install

  • After the installation finishes, in your browser enter the IP of your OMV and the port number 8123 (192.168.1.30:8123). You should see the following:

  • Wait around 20 minutes. Depends on device performance and Network link speed. During this waiting period, you can check in the Docker Container the Log for the Supervisor to track the progress. Open your docker in OMV and you should see something like this:

  • Open your docker in OMV and you should see something like this:

  • Everything should be running smoothly now. If you open your Home Assistant page, after setup your username and password, you should see the Home Assistant Dashboard page and in the left side, the Hass.IO tools:

  • If something goes wrong with your setup, you can also connect via SSH and remove all repositories and containers related to HA with the following cmdlets:
    List the Containers and repositories:
    docker container ls
    docker image ls
    <take note of the image ID of HA&HAsupervisor>
    Remove all the Containers and Reprositories associated with HA:
    docker rm --force <IMAGE ID>
    docker rm --force <IMAGE ID>
    docker rmi --force <IMAGE ID>
    docker rmi --force <IMAGE ID>
    List again the Containers and repositories to double check if any remaining are left from previus installations
    docker container ls
    docker image ls

More Info:
-> https://github.com/home-assistant/hassio-build/tree/master/install
-> https://www.home-assistant.io/hassio/installation/

12 Likes

hi @TiagoRoxo great job with the write up! it really helped me out especially the
-d "/sharedfolders/AppData/HA" which allowed me to set the config directory to a shared folder (using the OMV native SMB versus using the hassio samba plugin).

The documentation on the -d flag was added after I had installed hassio on OMV, but I just took a snapshot and deleted everything and started over and followed your instructions.

One thing I want to add for others reading this, if you’re having trouble deleting the HA Supervisor container and image, you need to first stop the service and disable it:

sudo systemctl stop hassio-supervisor.service
sudo systemctl disable hassio-supervisor.service

once I disabled the service, I could forcefully remove the container and image without it restarting, as you instructed above:

I also deleted all the hassio addon containers before restoring from a full snapshot and everything worked.

Thanks again!

1 Like

This works also great on a RPI3b with usb boot on Raspbian strech desktop + Docker! Thanks for this.

But for me there is one minor downside. I like to use Teamviewer Host to control the pi of some family members. After some testing I found out that after the first command ‘apt-get install…’ Teamviewer Host doesn’t work properly anymore after a reboot. After the reboot I have to link Teamviewer Host again with my account.

Does someone have a idea what would be the cause of this problem and how to solve it?

I use VNC and it works on my Pi’s. It’s built in as well…

VNC works great but i’m not always on the same network. After a five reboots it weirdly doesn’t unlink my account anymore! so thats solved

Hello @TiagoRoxo,

thanks for this writeup! Yesterday my HC2 arrived and I plan to use the same approach (omv -> docker -> hassio).

One of the reasons to restart with hassio is the wear on the SD-cards I experienced before. They only lasted about a half a year.

I was wondering did you install OMV and hassio on your SD-card? Or did you make the SATA-disk also containing the root partition, like this example: https://wiki.odroid.com/odroid-xu4/software/building_webserver

In addition to my previous post. In OMV you can move your files to your SATA-disk by using ‘nand-sata-install’ in the terminal. See https://forum.openmediavault.org/index.php/Thread/19618-OMV-3-for-ODROID-XU4-HC1-HC2-MC1/ for reference.

Hi guys, i’ve follow your guide and i’ve a problem when ha start:

This is the log:

FATAL tini (6)] exec /bin/entry.sh failed: Exec format error

supervisor start correctly

Thanks

thanks for the guide, I’m new to the docker world and I managed to install everything. I have a problem, I installed hassio in a shared folder appdata / hassio I see it via smb, I can create new files and folders, but I can’t modify existing files, such as configuration.yaml. How can I solve it?

Is the supervisor responsible for bringing up the homeassistant container or not? For me it only works once, after the initial installation. But after a “systemectl restart docker” it will never bring up homeassistant again, it has to be manually started. Is this expected behaviour? I have 2 ubuntu machines behaving the same way, so I’m thinking its a design decision?

First boot after install

19-04-15 10:20:09 INFO (MainThread) [hassio.core] Hass.io is up and running
19-04-15 10:20:09 INFO (MainThread) [hassio.homeassistant] Setup Home Assistant
19-04-15 10:20:09 INFO (SyncWorker_0) [hassio.docker.interface] Pull image homeassistant/qemux86-64-homeassistant tag 0.91.3.
19-04-15 10:21:35 INFO (SyncWorker_0) [hassio.docker.interface] Tag image homeassistant/qemux86-64-homeassistant with version 0.91.3 as latest
19-04-15 10:21:35 INFO (MainThread) [hassio.homeassistant] Home Assistant docker now installed
19-04-15 10:21:35 INFO (MainThread) [hassio.homeassistant] Start Home Assistant
19-04-15 10:21:36 INFO (SyncWorker_8) [hassio.docker.interface] Clean homeassistant application
19-04-15 10:21:38 INFO (SyncWorker_8) [hassio.docker.homeassistant] Start homeassistant homeassistant/qemux86-64-homeassistant with version 0.91.3
19-04-15 10:22:03 INFO (MainThread) [hassio.homeassistant] Detect a running Home Assistant instance
19-04-15 10:22:03 INFO (SyncWorker_2) [hassio.docker.interface] Cleanup images: ['homeassistant/qemux86-64-homeassistant:landingpage']

Boot after restart

19-04-15 10:23:25 INFO (MainThread) [__main__] Run Hass.io
19-04-15 10:23:25 INFO (MainThread) [hassio.misc.dns] Start DNS port forwarding for host add-ons
19-04-15 10:23:25 INFO (MainThread) [hassio.api] Start API on 172.30.32.2
19-04-15 10:23:25 INFO (MainThread) [hassio.addons] Startup initialize run 0 add-ons
19-04-15 10:23:25 INFO (MainThread) [hassio.core] Hass.io reboot detected
19-04-15 10:23:25 INFO (MainThread) [hassio.tasks] All core tasks are scheduled
19-04-15 10:23:25 INFO (MainThread) [hassio.core] Hass.io is up and running

Several minutes later

root@square:~# docker ps
CONTAINER ID        IMAGE                                   COMMAND                  CREATED             STATUS                   PORTS                                                                                        NAMES
9c80607c64ff        homeassistant/amd64-hassio-supervisor   "python3 -m hassio"      13 minutes ago      Up 8 minutes                                                                                                          hassio_supervisor

Install portainer to manager your docker containers, supervisor needs to be running in order for home assistant to come up the below commands should help.

Blockquote

sudo systemctl stop hassio-supervisor.service
sudo systemctl stop hassio-apparmor.service

disable services
sudo systemctl disable hassio-supervisor.service
sudo systemctl disable hassio-apparmor.service

remove services
sudo rm -rf /etc/systemd/system/hassio-supervisor.service
sudo rm -rf /etc/systemd/system/hassio-apparmor.service

removing hassio folders (except the config folder)
sudo rm -rf /usr/sbin/hassio-supervisor
sudo rm -rf /usr/sbin/hassio-apparmor

I’m going to try this later. I’m running OMV via Debian 9 on a Mac Mini. Which device should I choose for the script to run? Looking at the options below I assume qemux86-64?

intel-nuc
odroid-c2
odroid-xu
orangepi-prime
qemuarm
qemuarm-64
qemux86
qemux86-64
raspberrypi
raspberrypi2
raspberrypi3
raspberrypi3-64
tinker

You shouldn’t need to select any device

I’ve found that I can either reboot to make hassio bring up homeassistant, OR remove the “last_boot” line from the config.json file. Make sure you fix/remove any extra commas if needed.

The /sharedfolders/AppData/HA will be located on the system disk. How would you mount that as a shared folder in OMV?