# pull docker image
docker pull ros:humble
# locally on the robot DDS uses shared memory for node discovery and communication
# start docker, and make host network and shared memory is available to dockerized processes
docker run -it --rm --ipc host --net host -v $(pwd):/opt/ros2_ws ros:humble
# Now ros2 commands can be executed. Below example shows how to list topics available on controller:
ros2 topic list
ros2 topic echo --qos-durability transient_local --qos-reliability reliable /20235589725/payload
# where 20235589725 is the local robot serial number