I’m happy to share with you my project MqDockerUp, a tool that allows you to monitor and update your docker containers using MQTT and homeassistant. It can publish information about your containers, such as name, status, image, ports, etc., to an MQTT broker, and create or update corresponding entities in homeassistant. You can also send commands to start, stop, restart, or remove your containers via MQTT or homeassistant. It even creates update entities in Homeassistant to make it easy to update your running containers.
One of the main features of MqDockerUp is that it makes updating homeassistant running in a container easy and convenient. You can see when there is a new version available and update it with one click from the Home Assistant UI. This is similar to how Home Assistant OS works.
There is a config.yaml under /app/config.yaml
All available values can also be set using environment variables. I’ll reflect that in the GitHub documentation soon.
Currently it identifies a lot of registries and they are shown in homeassistant as an entity.
The update functionality is just implemented for DockerHub right now.
If you tell me which registries you use I could implement them next.
MqDockerUp is designed to function independently of docker-compose or the method used to start your containers. By checking your running containers, similar to running “docker ps,” it retrieves information about them. The tool then acquires the container image and tag and attempts to locate it on DockerHub. If it is found, the update feature is enabled. Otherwise, only container information is displayed in homeassistant.
In case you have any specific feature requests or face any issues with the tool, I’m happy to provide assistance or implement missing functionality. Although MqDockerUp was primarily developed for personal use, I’m open to incorporating highly requested features. I also encourage you to explore the source code and contribute. I strive to maintain clean code and document it where necessary.
It current does not support any raspberrypi. I’m working on at it and I’ll come back to you when I’m done. Currently only the x64 architecture is supported.
I updated the check for update algorithm, it should show a lot more update entities now.
I also change how the deletion of old running container works, which had a bug and caused some container to disappear.
I’ll soon implement a self update feature. After that it will be stable enough for a 1.0 release.
Thanks for any feedback provided.
Just tried this last night and it was super easy to setup. Thanks for creating this!
I’m encountering an issue where only 10 of my containers are showing up as devices in HA. No errors in HA logs. I haven’t inspected MQTT yet nor deep dived into the mqdockerup logs, but I don’t see any errors in the stdout.
Is it possible to get two instances of the program to work at the same time? I have some containers deployed on a NUC and some on a Pi4. I was hoping to have a container of this program running on each to provide easy access for both systems. Unfortunately, the two seem to wrestle each other and as soon as the second one comes up I see a lot of “Removed missing container …” in the output.