The newly-developed Mender Update Modules for OTA container updates, in particular the docker-compose Update Module, offers superior OTA update functionality for container updates.
Mender will also introduce server-generated delta support for containers in a future release.
To support application updates in a generic way, Mender provides the Update Module framework. Mender Update Modules are designed to be single-purpose. The Artifact type identifies which Update Module the Mender Client should run to process a given artifact.
Whether you need to install a new application onto your devices, update some files, or perform some other operation of your choosing, the Update modules are an option that reduces the size of Artifact and time of the deployment (compared to Operating System updates) and can extend the Mender Client to handle any type of software update.
Many teams rely on full root filesystem updates a few times per year to keep the operating system and middleware layers patched and secure. Between those broader system-level rollouts, container-based application updates allow for much faster iteration — often on a weekly or even monthly cadence. Having robust support for both update strategies means Mender can cover every layer of the device software stack, from the OS all the way up to the application.
The docker-compose Update Module packages container images directly inside the Mender Artifact rather than pulling them from a remote registry at install time. This approach brings significant advantages, particularly when it comes to network reliability.
Commands such as docker-compose pull depend on a stable connection to a container registry, which can be problematic for devices deployed in environments with intermittent or constrained connectivity. By bundling images into the Artifact, the docker-compose Update Module takes advantage of Mender's proven retry and resume logic, so interrupted downloads pick up where they left off instead of starting over. It also works seamlessly with Mender Gateway, making it straightforward to distribute container updates across local or isolated networks without requiring each device to reach an external registry.
The Update Module is fully compatible with standalone mode as well, enabling completely offline update workflows. Because images travel inside the Artifact, there is no need to configure container registry credentials on individual devices — simplifying both provisioning and ongoing maintenance.
Official support for Docker Compose — the most widely adopted container orchestration tool — is available under the commercial support policy. For those exploring other container runtimes, community-maintained Update Modules exist for several additional tools. For more details on the docker-compose Update Module and Mender Client 6.0, see the Mender Client 6.0 release blog post.
Note: The Mender Application Update Module (app-update-module) is officially discontinued. Never supported under the Mender Service Level Agreement (SLA), the Mender Application Update Module repository will also be archived. Deprecating the Application Update Module aligns to core design principles of Mender for Update Modules. The Application Update Module acted as a universal handler driven by embedded metadata, adding complexity and dependencies that hindered the predictability and robustness that Mender is built to guarantee.
The architecture of the Application Update Module would also not support server-generated delta updates.
The current Application Update Module can still be utilized. Installations will not “break” just because support is discontinued. However, no further updates will be provided. For all new projects, using the replacement Update Module for containers is strongly recommended.
There is a new project, Mender Update Modules for OTA container updates,- which is also open-source and provides an officially-supported docker-compose Update Module for OTA updates of container compositions. Other use cases are planned to be supported in the future so stay in touch!
Share your feedback about this release in the Mender Hub General Discussions forum. If you encounter any issues, please report them in the Mender JIRA issue tracker with detailed reproduction steps.