Addons for Docker installation

Hi there,

Future possible user here.
First thing I do when I want to test something, is run it as a container. That way I can isolate its behaviour.

Looking at the discussion from the begining, Let me clarify what I understood:
There are several ways to install Home assistant which are described in this matrix: Installation - Home Assistant

Adds on are not available on container installation by design purpose, choice of the dev team, not a technical blocker.
If you want to use adds-ons features, you will have to install those 3rd party software yourself and maintain the integration with HA.

So for example, if I want some MQTT broker adds-on, i will have to install myself some mosquito or rabbitmq and manage myself the configuration with HA.

Home assistant dev team does not maintain a repository of adds-on under the form of docker-compose files (could be simply documentation page) with let say 2 services, HA + 3rd party service with all the required configuration (volumes, ports, secrets, env variable, etc…).

And there are no intention to do so, by choice.

Did I capture that right ?

5 Likes

Correct

Correct, though those aren’t add-ons … add-ons are only the special container images for Home Assistant OS’s Supervisor.

Correct, but there’s absolutely nothing stopping somebody starting a forum (wiki) post here to capture all that, rather than expecting the devs to do it :wink:

I would say though that (at least) 99.9% of the configuration for any container is unrelated to Home Assistant. The way that (say) Mosquitto is configured is the same no matter what.

So is there already a wiki or forum or similar that explains how to add an add-on to Home Assistant Container?

I have experience with multiple docker compose stacks running side-by-side on my server, proxying everything through traefik, connected through wireguard to my home. I was able to run Home Assistant on a remote server and it still can control my home through VPN. It’s very nice.
But I just need a starting point on how to integrate some add-on in HA, basically the stuff the Supervisor does. I already tried to integrate Grafana but I don’t know how to integrate a single dashboards/panel or even the normal UI because cross-origin problems or issues with disallowed iframes I guess. And how to add SSO authentication is also a mystery.
Isn’t there at least one how-to describing it step by step for some popular add-on?

As the OP said already in the beginning of this thread I also had no idea there are add-ons that can be installed by one click until I found out that it is not possible with HA Container which made me sad. And after all this time there still seems to be no documentation on how to install add-ons properly.

1 Like

Getting a Grafana dashboard on your Lovelace dashboards is not easy, not even with the add-on. And still needs routing through my separate (non-addon) nginx to work.

In a container environment, you can use GitHub - lovelylain/hass_ingress: Home Assistant ingress feature, add additional ingress panels to your Home Assistant frontend. to integrate functions into HA. It provides several working modes. work_mode:ingress provides services in the form of sub-paths on the same site, which can avoid cross-site problem, but not all services support this mode; for those that do not support it, you can use nginx to assign different domain names and filter out cross-site restrictions, and then use work_mode:auth to implement SSO auth. You will find that the configuration steps are relatively complicated. The function of addons is to simplify the configuration and make it easy to use.

In short, no. Because add-ons (almost always) need the Supervisor.

There’s a few that also work with Docker, and their own documents cover that.

No

What you need to do is start a fresh topic with your exact problem - eg how to embed Grafana dashboards in the HA UI and then people can help you.

Thank you this Helped me Understand why it wasn’t a option inside of the container version of HA
This is what’s needed more in the Linux/open source community reasons. Not just “No you cant and your dumb for not knowing why”

3 Likes

Found this when looking into the workflow for addons if HA is installed in a docker container. @aigarius got gaslit so hard I’m surprised his house didn’t explode. Clearly if add-ons are docker containers OP is correct and you could just list those docker containers and ymls to add them to the docker, since you do that with the bulky “Supervisor” anyway, secretly. Or a better “Supervisor2” could just do that for you, docker-compose.yml is just text.

Def puts me off HA if the community is so egregiously dismissive. Kudos to OP for talking in good faith with those people for so long when they only focused on explaining “why you’re wrong” or “why you don’t understand it correctly” (e.g., why you’re dumb for wanting that and we’re smart for not wanting it). They’re hyper-focused on this “Supervisor” when docker’s solved what it does better already (but they’d have to use those tools not their own tools - and clearly won’t to the detriment of HA).

3 Likes

This FR is 2 years old and hasn’t attracted a single developer to submit a PR in any repo. They also see that this FR is meritless, as has been patiently explained, in detail, by users who you have disparaged as “egregiously dismissive”.

Hey guys, im also here when searching like “how to add my MQTT bridge to HA”

Working in IT for more than 15y now, i think the dev team needs a strategical review of the whole project, no dout you are all technically tallented to build the whole thing, but one important point against your concept: the docker way should be here to simplify the user experience and it should NOT be reserved for some tech guru, my grandma should be able to copy a oneliner cmd to setup a docker service, that’s it. If one need some deep control on the thing, he needs a dedicate OS and do the necessary configuration himself.

To be honest, as an end user of the product, i don’t want to care about the difference between Addons and Integrations, just give me something that works, and makes my life easier!

It is not and is much more important than a technical challenge, you need to review the whole working direction.

3 Likes

Honestly, Docker is the least of the problem there. There’s a lot more knowledge required, including backups (and recovery).

For people like your grandma HAOS exists and is a saner option.

2 Likes

As a guy that uses docker installation and have no formal education in it I can tell you from my experience that this is not that hard.
Some docker essentials are easy to learn and it is not that hard to install home assistant and other containers in docker. There are a lot examples around net on setting up nearly every container that can be copy/pasted. Of course if you want to go deeper in docker you will need a bit more than a copy/paste and things can be complex and difficult.
Using docker you have a lot more flexibility in setting everything up than with haos or supervised.
Backup are really, really simply to do. I use duplicati as system service. This is working like a clock. I like that i have ability to use email report on done backups.
I had to restore a few times some things that i messed up and restoring is a breeze.

1 Like

Hard is relative. If somebody’s coming at this having never used anything more than an iPhone then the learning curve of HA is going to be steep. Add on some Linux, and Docker, and how to backup and restore, and that’s a lot to learn about.

Now, I’m with you on the joys of Docker, but I also don’t think that it’s for everybody. Heck, over on Discord we routinely get people asking if HA still works if they turn the computer off. There’s a lot of HA users who don’t understand how any of this works - and that’s ok.

1 Like

I just created an account to contribute to this discussion. I set up HA in a docker container and found the experience of working with “add-ons” very frustrating at first. In my case I bought one of those little M5Stack Atom Echos and made a voice assistant. It’s amazing! But the documentation was entirely lacking. I worked it out, because I’m a developer and a semi-professional sysadmin, but I did it mostly by experimentation and intuition born of many years of experience. Eventually I stumbled across the rhasspy GH org (no mention of it was anywhere to be found in the documentation) and realized what I needed to do.

I appreciate the “docker is for advanced users” stance, no problem with that, but tbh it felt like the method I arrived at was deliberately obscured, censored from the docs, in the manner of projects that make self-hosting deliberately difficult to comply with OSS licenses while more-or-less forcing folks to use a paid service. It makes me worry that I’ll always be swimming upstream with HA, and nervous about investing in my setup for fear of a future rugpull.

Just my 2¢, of course, but I am a capable user very kindly disposed towards the project, and this is how the experience made me feel.

1 Like

I think what people are missing here is that the Container installation option is for people that don’t want or need a tightly integrated system, whereas add-ons are specifically intended to use with Supervised and HAOS installations.

3 Likes

The problem is that some features and integrations are barely documented if at all for non-supervised installations.

Like, try setting up matter+thread for instance.

3 Likes

It is the most popular only because the other options lack functionality and this method supports what people want. For me it was a forced decision. I guess (and see) for others too.
You are fighting against the community which is providing value to HA by adding missing functionality as addons and are making it harder for other people to get access to the addons.

I’d disagree. Other methods don’t lack functionality, HAOS is just the easy button, particularly if you’re not technical.

I run Container (used to run Core until I got bored of building Python with pyenv), and there’s no add-on I’ve been unable to duplicate the capabilities of. In 99.99% of cases there’s an existing Docker image. For one I’m running the add-on because the add-on dev was kind enough to also make it Docker compatible.

Now, that’s not to say that it’s always easy. Many times the documentation is written for HAOS users and everybody else is out in the cold. That’s frustrating. Doubly so when it’s official HA docs.

1 Like

This thread is quite a frustrating read.

It’s pretty clear that most/all of the functionality can be re-created by configuring and running other containers manually. It seems the question is why there is no desire to help in doing so. Given the fact that add-ons are containers, the knowledge seem to exist already. Why not make that a little more accessible to users?

That said, running the containers is often the easy part. Finding what add-ons even exist and how to integrate them with HA often seems to be the bigger hurdle.

Are there any numbers on the install methods somewhere?

Because I also challenge the idea that the container install is only for the advanced users. For many the Container install might be even easier than HA OS. TBH I am not sure why Core and Supervised are even mentioned in the docs. They seem more interesting to developers.

Some lower hanging fruits:

Given that add-ons are containers I am also wondering why integrating with the container runtime isn’t the most obvious choice to come to a single way of doing things - but that’s obviously a bigger picture discussion.

Just my 2 cents.

1 Like

Help from HA or the community?

Did your frustration overcome you and you skipped some messages? Explanations were given.

It’s in the store: Home Assistant Add-ons - Home Assistant. Or are you talking about third-party ones?

Why not? Aren’t devs valid users? Most of the docs are actually tailored towards HAOS anyway.

1 Like