The release of Mender Client 6.0 is here. This includes all components that run on the device side.
The main new feature in Mender Client 6.0 is the official support for containers managed with Docker Compose. The combination of fully supported full-image A/B updates and container updates ensures Mender supports robust, efficient updates in all layers of the stack.
Many Mender customers utilize full root file system (rootfs) updates several times per year to ensure consistent system-level updates, including operating system (OS) level and middleware security updates. Then, iteration can occur quickly with application-layer updates using containers on a weekly or monthly basis.
The official docker-compose Update Module encapsulates the container images into the Mender Artifact itself, which brings many benefits, especially related to networking (or lack thereof).
Raw commands like “docker-compose pull do not work well in unreliable networks. Instead, the docker-compose Update Module leverages Mender’s battle-tested retry and resume handling and enables the use of Mender Gateway for efficient updates in local or segregated networks. The docker-compose Update Module is fully compatible with standalone mode for supporting offline updates, and there is no container registry configuration needed on the device. Leveraging the docker-compose Update Module greatly increases the robustness and simplicity of deploying containers to connected devices in unreliable networks.
Official support for Docker Compose, the most popular container tool, falls under the support policy for commercial customers. In addition to Docker Compose, there are also community-supported Update Modules for several container tools.
As Mender becomes more encompassing and adds additional components, we recently split Mender releases into Mender Client, Mender Server, and Mender Gateway. Splitting releases ensures improvements are delivered quickly.
In addition to split releases, from Mender Client 6.0 onward, the overarching Mender Client version will also be split into subcomponents. The Mender Client version number will increase whenever any subcomponent version is updated. For example, if the current version is 6.0 and a new Update Module is added, the new release is Mender Client 6.1, in accordance with Mender’s semantic versioning compatibility policy (in this case, a new, backward-compatible feature).
To determine what is currently officially supported under a commercial contract, refer to the documentation page on supported releases.
Mender Client 6.0 includes many improvements, most notably in network robustness.
Since we’re gradually introducing Rate Limiting support in the Server, the Mender Client now interprets and handles that correctly, leading to fewer errors and less unnecessary network traffic.
The new configuration option, RetryDownloadCount, allows increasing the number of attempts the device makes to download an Artifact from the Server when there is a network interruption. It is often beneficial to increase the RetryDownloadCount in networks that are very unreliable.
For a full list of changes, please refer to the Mender Client changelog.
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.