SUGGESTION: Add a skip-images option to the app-update-module scripts
Unfortunately for now, if I want to use the app-update-module to update a docker-compose application, the images are by default included in the artifact.
My problem is that the images I am using are fairly big (in size), and it would be very ineffective to include them in the artifact (planing to build artifacts in CI/CD). Instead, I would like docker compose to handle the pulling of images directly from the target device.
Create Mender Artifacts
It would be nice to have something like this as a generation command:
That makes sense to have, especially for testing and in environments with very stable network.
Just note that I have seen many reports that the registry fetching tools (docker pull, etc.) work very poorly when network is unreliable. E.g. they can simply hang, there is no timeout, no resume, etc. There can also be issues with firewalls.
So the robust way to do this is to package images into the Artifact and then use delta updates to reduce the size.
In the documentation it is stated that the ‘–image’ flag is optional.
Including the Docker images is optional, excluding the images will make the devices try to pull the images from the Docker registry.
I interpret that as the images will not be bundled in the artifact, and the client will instead handling the pulling of the stated images, but I guess that is not the case @eystein?
thank you for your interest in Mender. At the moment the images are obligatory, however we have the “skip images” feature on our road map and it will be introduced soon.
thank you @DamKast for the nice idea.
@peter, when you implement this “skip images” feature, please continue to allow us to specify where the images are located so we can point the target devices to them.
do I understand correctly, that you would like to be able to set the urls for the images to pull from the device during the artifact creation? or perhaps even a registry url and only the image name:tag of particular images?
Yes - the registry url and image name:tag, just as it works currently… the only difference being that the target device pulls the images from the registry rather than the mender artifact containing the images.