While playing with Aslan over the weekend thought I'd give it a go to clean up the Dockerfile and surrounding scripts.
The biggest changes are:
Build and run the image expecting a 'modern' version of Docker and nvidia-docker. Since Docker 19.03 (released July 2019, both Ubuntu 18.04 and 20.04 provide 20.x) Nvidia support is better integrated with Docker. Using the NVIDIA Container Toolkit (new name for nvidia-docker2) you don't have to jump through all the hoops anymore and can just use docker run --gpus all.
Use official ros:melodic image as base, which was made possible by the above.
That plus some cleanup has reduced the image size by ~750 MB. There are several apt packages I did not include here, expecting that what is needed has been declared as a dependency in a package.xml and rosdep, though maybe there are some that you know should still be there. I tested the Gazebo simulation + Rviz + rqt_graph.
While playing with Aslan over the weekend thought I'd give it a go to clean up the Dockerfile and surrounding scripts.
The biggest changes are:
nvidia-docker2
) you don't have to jump through all the hoops anymore and can just usedocker run --gpus all
.ros:melodic
image as base, which was made possible by the above.That plus some cleanup has reduced the image size by ~750 MB. There are several apt packages I did not include here, expecting that what is needed has been declared as a dependency in a package.xml and rosdep, though maybe there are some that you know should still be there. I tested the Gazebo simulation + Rviz + rqt_graph.