Abstract

There are significant difficulties in deploying and reusing application code within the robotics community. Container technology proves to be a viable solution for such problems, as containers isolate application code and all its dependencies from the surrounding computational environment. They are also light, fast and performant. Manual generation of configuration files required by orchestration tools such as Docker Compose is very time-consuming, especially for more complex scenarios. In this paper a solution is presented to ease the development and deployment of Robot Operating System (ROS) packages using containers, by automatically generating all files used by Docker Compose to both containerize and orchestrate multiple ROS workspaces, supporting multiple ROS distributions and multi-robot scenarios. The proposed solution also generates Dockerfiles and is capable of building new Docker images at run-time, given a list of desired ROS packages to be containerized. Integration with existing Docker images is supported, even if non-ROS-related. After an analysis of existing solutions and techniques for containerizing ROS nodes, the multi-stage pipeline adopted by the proposed solution for file generation is detailed. Then, a real usage example of the proposed tool is presented, showcasing how it an aid both the development and deployment of new ROS packages and features.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call