HASSIO docker install issue please help

Hi, I have installed hassio docker on ubuntu 16 & 18 many times. The past couple weeks everytime I try to install it I get a ‘invalid reference format’.

Im not sure what is causing it I couldnt find anyhting on google and I have searched a few times over the past week. I have installed other containers no problem, nothing has changed in my enviornment lately either. I run ubuntu 18 server (tried 16 as well) vm on a dell r720.

This doesnt bring my house down thankfully, I run home assistant docker (non-hassio). But I do have a couple family members and few friends I help with often. I normally have a hassio vm to test with when I need to, I just leave it powered off. I deleted this vm a couple weeks ago, thinking Id just rebuild it. But I havent been able to…any ideas would be greatly appreciated…I will paste some info below:

EDIT: Forgot to mention it does oddly create the hassio directory, but not anything inside that…maybe a permission issue but I did change the sec on /usr/share/hassio

[email protected]:/home/da# curl -sL https://raw.githubusercontent.com/home-assistant/hassio-build/master/install/hassio_install | bash -s

[Info] Install supervisor Docker container

invalid reference format

[email protected]:/home/da# curl -sL https://raw.githubusercontent.com/home-assistant/hassio-build/master/install/hassio_install | bash -s 

-------------- 
   [email protected]:/home/da# docker -v

Docker version 18.09.0, build 4d60db4

--------------
[email protected]:/home/da# docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED             STATUS              PORTS               NAMES
[email protected]:/home/da# 
--------------

[email protected]:/home/da# docker images
REPOSITORY          TAG                 IMAGE ID            CREATED             SIZE
[email protected]:/home/da# 
--------------

 this is the command I run to install hassio normally...as root.
curl -sL https://raw.githubusercontent.com/home-assistant/hassio-build/master/install/hassio_install | bash -s
--------------
even though hassio wont install, home assistant docker will (i tried while troubleshooting).  I use this command to install home assistant.

sudo docker run -d --name **=** "homeassistant" -v /home/homeassistant/.homeassistant:/config -v /etc/localtime:/etc/localtime:ro --net **=** host homeassistant/home-assistant
---------------
`Also, I do install the dependencies required first.`

that error is telling you that the docker run command has an invalid syntax.

Why are you putting the ** around the = signs?

I’ve never seen that. It’s likely the cause of your error.

try like this:

sudo docker run -d --name="homeassistant" -v /home/homeassistant/.homeassistant:/config -v /etc/localtime:/etc/localtime:ro --net=host homeassistant/home-assistant

thanks for taking a look. those stars must have been added when I pasted. I havent seen them before and just double checked my history, the stars are not here.

But that is the homeassistant docker image and I have no problem installing that.

Its the hassio docker image that just started giving me this message. I did come across a syntax hint when searching as well, I went through homeassistant github and the info looks right, something had to of changed in the past few weeks though because Ive used this install script many times without issue. This is the document page…but I know some of these kinda fall behind on updates.

Towards the bottom on the first link and the second link is a little more info.

Hi Darbos,
How do you managed to solve that “invalid reference format” while trying to install hassio supervised docker.
I’m having the same issue right now. I used that script several times without issues and now I’m completely stuck.
So far I tried complete wipe out of previous containers and clean reinstall of docker before trying to install Hassio, with no luck…

THat usually means that the syntax of the docker command isn’t correct.

post your docker run command you used so we can see the syntax. Usually it’s either the wrong kind of quotation marks (the “fancy” kind not the plain text kind) or the dashes that get used. Both of those are copy/paste errors normally.

Thank you finity. I’m using in fact a script that automatically does all the work for me.
I used several times in the past but now it fails.
The command is:

curl -sL "https://raw.githubusercontent.com/Kanga-Who/home-assistant/master/supervised-installer.sh" | bash -s

and what I get is:

*[info] *
[info] This script is taken from the official
*[info] *
[info] Home Assistant Supervised script available at
*[info] *
[info] https://github.com/home-assistant/supervised-installer
*[info] *
[warn] ModemManager service is enabled. This might cause issue when using serial devices.
[info] Creating NetworkManager configuration
[warn] Changes are needed to the /etc/network/interfaces file
[info] If you have modified the network on the host manually, those can now be overwritten
[info] If you do not overwrite this now you need to manually adjust it later
*[info] Do you want to proceed with that? [N/y] *
y
[info] Replacing /etc/network/interfaces
[info] Restarting NetworkManager
[info] Install supervisor Docker container
invalid reference format

I actually use this command today and it worked well (the Supervisor update jacked everything up so I had to reinstall). I removed Modem manager before getting started with that script using the apt purge command.

I’ve been trying to run this exact command and am getting the same error. What’s the syntax for the apt purge command you’re using to remove Modem Manager? My Linux/Ubuntu knowledge is 2 days old so forgive me if it’s something simple.

Same error snippet below:

[email protected]:~# curl -sL "https://raw.githubusercontent.com/Kanga-Who/home-assistant/master/supervised-installer.sh" | bash -s
[info] 
[info] This script is taken from the official
[info] 
[info] Home Assistant Supervised script available at
[info] 
[info] https://github.com/home-assistant/supervised-installer
[info] 
[warn] ModemManager service is enabled. This might cause issue when using serial devices.
[info] Creating NetworkManager configuration
[warn] Changes are needed to the /etc/network/interfaces file
[info] If you have modified the network on the host manually, those can now be overwritten
[info] If you do not overwrite this now you need to manually adjust it later
[info] Do you want to proceed with that? [N/y] 
n
[info] Restarting NetworkManager
[info] Install supervisor Docker container
invalid reference format

Sorry I didn’t see this reply. I only get notified of a reply if you either use the reply button in my post or you tag my user name in your reply (i.e. @finity).

But, if you haven’t already figured it out by now, you might want to tag the author of the script (kanga-who - which isn’t a tag - I’ll let you decide to do that) to see if there is a known issue with the script you’re using.

It’s in the instructions above the script.

Hi everyone
I had the same issue.
My solution:
Firstly I did not want a random MAC address each scan so added

[device]
wifi.scan-rand-mac-address=no

to the file /etc/NetworkManager/NetworkManager.conf
But this install script overides it and restarts Network Manager which seems to be what caused the error.
Resolved it by running the script as normal.
Addding the above text to NetworkManager.conf
Then edit the script and remove the section that edits the network config and restarts NetworkManager.
All installed perfectly.
Let me know if you need more details.

1 Like

Hi @Royrdan
So I’ve been following a guide to get this working and I’m getting stuck at the Invalid Reference Format error.

I’ve tried commenting out the elements of the installer.sh to not change the network config and it seems to have knocked me further back and gives me:
line 1: $'\E[33m[warn]': command not found
so I’m really stuck.

I’m pretty new with Linux which isn’t going to be helping my cause I’m sure so if you can point me in the right direction I’d appreciate it that.
I’ll be using a Conbee II with it so I’m sure I’ll be back to ask more questions.

Thanks for any help.
Art

I just commented out the one line:

systemctl restart “${SERVICE_NM}”

and then the script ran

5 Likes

Thanks, really thanks, great solution :smile:

I started to use wifi to connect to the internet, and the same problem as yours occurred, but when I used a wired connection later, no such information was reported.

Same issue today, installing over wifi.

Seems that the script is trying to get the latest version string of the hassio supervisor before the Wifi has time to come back online, and thus gets an empty version string from the curl command. So, in the next step it tries to pull the hassio_supervisor with an empty version string and comes up with the “invalid instance” message.

You can run the install with “bash -x installer.sh” to see exactly what the bash script is executing. In my case, I was able to see that “HASSIO_VERSION=$(curl -s $URL_VERSION | jq -e -r ‘.supervisor’)” was coming up empty, and the next command was then trying to pull image “homeassistant/amd64-hassio-supervisor:” and was missing the version that normally goes after the semi-column.

Since the Network manager conf was already modified after the first script attempt, I answered “No” to restarting the NetworkManager on the second attempt and everything was ok.

G.

1 Like

This worked!!! thank you so much. ive been looking for this all day

1 Like

Apparently, on some slower computers, the network service starts slower and during the curl call, it is still not started.
Added a little snippet to wait for connection before allowing curl’s request.

I’ve written a pull request, but I haven’t filled in everything the guideline asks for. But the solution works, whoever can/want to test it, thank you!

1 Like

thanks a ton, it’s work for me.

2 Likes

Was using WIFI, but tried to use Ethernet and it worked for me!