The AUV Environment is currently under construction. Following Martin Gauthier and Kevin Charbonneau's Special Project during winter 2020, we noticed that deploying the whole thing was very painful.
Our team decided to containerize all our custom ROS nodes individually. This way, installation and development of our AUV environment would be easier and seemless for the user.
Since ROS is currently offering base images of their distributions ROS Docker Hub we will base our images on these.
This way when ROS updates to future distributions, this will make our AUV envrionment update easier.
Here is a representation of image dependencies between ROS official images and our custom images.
Notice that all our custom ROS modules must depend on
sonia_common
images since we need to have access to custom ROS messages while compiling our modules.
All Custom modules should depend on
sonia_common
using the proper tag :
Here is an exemple of how a docker image should be produced for custom ROS modules. Our base image is named sonia_common
and the required architecture and ROS packages are specified by the docker image tag.
For example, sonia_common:x86-perception
would be an image that could be run on an x86/64 architecture and all the ROS robot packages would be installed on it.
For additional information on which ROS packages are required, follow this link ROS Docker Hub
Here is an example of how a docker image should be produced for custom ROS modules. Our base image is named
GPU support on Jeston Xavier requires to use one of these images:
sonia_common:arm64-perception-l4t