[ros-users] [Discourse.ros.org] [General] Announcing ROS Docker Images for ARM and Debian

ruffsl ros.discourse at gmail.com
Wed Jan 10 02:10:06 UTC 2018



[quote="flixr, post:9, topic:2467"]
Especially asking this since the last sync to indigo and kinetic accidentally included an ABI breakage
[/quote]

In regards to controlling how ROS syncs are released into the building of docker images, the safeguard this far has been pinning the installed ROS packages by version number. However, from the looks of things, with the ABI brake from July, but the last version bump in the indigo dockerfile being from back in May [1], seems that didn't stop it due to implicit dependency changes in the sync?

As @marguedas mentioned, the triggers for rebuilding the official images are either merged PRs to the official library manifest (pertinent to the image:tag desired), or a rebuild of a parent base image, like the official debian or ubuntu images.

[quote="marguedas, post:12, topic:2467"]
@ruffsl do we have a way to trigger rebuilds for the images in the official docker library ?
[/quote]

We can also ask the library maintainers directly to simply manually trigger a rebuild of the images, say by way ticketing a request on the library github repo. I've done so before a number of times.

@flixr, I think you may find it useful to know that past images of Official Library images are archived on the docker registry and can be retrieved. As for longevity of such archives, I don't yet know what it is (haven't checked), but they seem to go back quite a ways in time. This can be done by pulling the image by its digest (immutable identifier) [2]:

```
docker pull ros at sha256:<older_ros_sha256_here>
````

If you have an older image laying around, you can use the docker CLI to retrieve the digest (I haven't found a good way to retrieve the archived list of available digests for a given repo from the docker registry as of yet, but would like to know [3][4]). If your CI is sensitive to ROS syncs, pinning the digest of the image in your dockerfiles may be a way to mitigate unplanned disruptions. Just be aware that the FROM images would then be static, and would not receive the latest security updates from upstream like generally tracked tags.



 [1] https://github.com/osrf/docker_images/blame/ecf2b15a56686c6c7d3fc710c1753cfe3e5e9067/ros/indigo/ubuntu/trusty/ros-core/Dockerfile#L35
[2] https://docs.docker.com/engine/reference/commandline/pull/#pull-an-image-by-digest-immutable-identifier
[3] https://github.com/docker/distribution/blob/master/docs/spec/api.md#content-digests
[4] https://forums.docker.com/t/get-image-digest-from-remote-registry-via-api/9480





---
[Visit Topic](https://discourse.ros.org/t/announcing-ros-docker-images-for-arm-and-debian/2467/13) or reply to this email to respond.




More information about the ros-users mailing list