Skip to main content
Version: 6

Docker Containerization

We distribute MoveIt Pro using docker to ensure MoveIt Pro dependencies do not interfere with other ROS 2 projects on your computer.

Dockerfile and Docker Compose

We provide a default Dockerfile for use in your custom MoveIt Pro workspaces here. The default docker-compose.yaml file can be found on your host computer at /opt/moveit_pro. The environment variables used by the docker-compose file are set in ~/.config/moveit_pro/moveit_pro_config.yaml.

Advanced Launch Configurations for other ways to run MoveIt Pro.

User workspace mounting

You need to mount a user workspace into the MoveIt Pro Docker containers, which allows you to:

  • Add your own custom packages into MoveIt Pro, including custom robot configuration or Behavior packages.
  • Ensure that Behavior packages generated when you Create a Custom Behavior in the web app are available on your host file system.

To mount a user workspace, run moveit_pro configure and follow the prompts.

Note that the user workspace folder must:

  • Be a valid Colcon workspace. This means that the folder must contain a src subdirectory, which in turn contains Colcon packages.
  • Contain a colcon-defaults.yaml at the workspace root to enable colcon build and test arguments. See our example here.
  • Contain a Dockerfile at the workspace root to enable creating a docker overlay image. See our example here.

For example, you can mount a folder located at ~/project1_ws into MoveIt Pro and use its packages if it has the following structure.

~/moveit_studio_ws
+ --- colcon-defaults.yaml
+ --- Dockerfile
+ --- src/
+ --- my_package_1/
+ --- my_package_2/
note

Your workspace will be bind mounted into the ${HOME}/user_ws folder of the MoveIt Pro containers.

Building Docker Containers on ZFS

If you are using a non standard filesystem such as ZFS, you may run into errors when building containers locally. For instance, when executing moveit_pro build or moveit_pro run. To remedy this, follow the steps in the MoveIt Pro Troubleshooting Docker ZFS guide to update your Docker daemon to use the ZFS storage driver.