Having Home Assistant running in a Docker container has many benefits: one can just stop the old version and start a new one instantly, all software is self-contained and immutable, so it can never be “corrupted”, many operating systems and even appliances (like NAS devices) now are able to run Docker containers so you can just run HA on a device that in your home network anyway, it is impossible to have leftover processes when you restart HA in case of any problems, …
However, running HA in a Docker container still comes with a major downside - you only get HA Core and no way to install and manage addons. The UI does not even suggest that such a thing exists at all when you are running in Docker. So you first need to discover that such a thing as addons even exist, then you need to find addon lists or registries to figure out if you need any of them and then you need to figure out manually how to install and start each of them.
I believe we can do better and most of the functionality is in HA already.
How about we make use of the Docker Compose functionality and plug the HA Addon Store into that if running in a Docker container installation? All user-facing Addon Store functionality would work just as it does in HA OS or HA Supervised installation, but the information about what Docker containers need to be started for which addon and with which settings would be simply written into a “docker-compose.yml” file in the config folder (including an entry for the HA Core itself). It would then be up to the user to use that file from their base OS to restart the whole set of containers when they add/remove or upgrade addons via the Addon Store.
This should not be too complex technically to implement withing the existing code, it would make addons discoverable for Docker installation users and it would allow people to easily install, use and maintain Docker installations with addons.
Are there any blockers to this idea?