Skip to content

Create® 3 Desktop Docker Image

We provide a Docker image suitable for developing and running Create® 3 applications on your Desktop. The docker image is named irobotedu/create3-galactic and its source code can be found here.

Note

The Docker image can be run on any base OS. However, non Linux-based OS will require custom networking configuration in order to communicate between a Docker container and a remote ROS 2 application.

Description of the Image

The Create® 3 Docker image is based off the official ROS 2 Docker images and runs an Ubuntu OS. It contains all the core ROS 2 packages contained in the "desktop" variant (i.e. it includes development tools, core libries and visualization tools).

The Create® 3 Docker image includes pre-built all the open-source Create® 3 repositories such as: the Create® 3 ROS 2 message interfaces, the Create® 3 simulator (both Gazebo classic and Gazebo ignition) and the Create® 3 examples.

Installing Docker

Follow the official instructions to setup Docker on your machine.

Starting a Docker container

The following instructions may vary depending on your base OS and Docker installation mechanism.

Linux

The following instructions assume that you have followed the Docker post-installation steps for Linux.

docker run -it --network=host --privileged -e DISPLAY=$DISPLAY irobotedu/create3-galactic bash

The --network=host option is required in order to allow the Docker container to communicate using ROS 2 with remote applications (e.g. your Create® 3 robot or compute-board).

The --privileged -e DISPLAY=$DISPLAY options are required in order to let the Docker container to access your xhost server and use GUI application (e.g. rviz or gazebo).

After you started the docker container, if you want to use GUI application, one (or more) extra steps are necessary. A simple way is to run the following in a new terminal:

xhost +local:docker:CONTAINER_ID
Where CONTAINER_ID can be found either running head -1 /proc/self/cgroup | cut -d / -f 3 inside the Docker container or by running docker ps in a new terminal.

You can find other ways to enable GUI in docker here. As an alternative, you can use the rocker tool to wrap the irobotedu/create3-galactic image and add capabilities to it.