Getting ROS 1 GUI applications to run on macOS is not as straightforward as running them on Ubuntu. Docker can provide the Linux environment, but applications such as turtlesim and rqt_graph still need a way to display their windows on the Mac.
I used Docker, XQuartz, and socat to make this work. This article documents the setup I tested in October 2020, including the commands I used and the results.
With this configuration, I was able to run:
turtlesim β a simple ROS simulator
turtle_teleop_key β keyboard control for the simulated turtle
rqt_graph β visualization of ROS nodes and topics
Compatibility note: This is a historical ROS 1 setup, not a currently validated installation guide. ROS Melodic reached end of life in June 2023, and ROS Noetic reached end of life on May 31, 2025. I have not retested these instructions with recent versions of macOS, Docker Desktop, or XQuartz. For new projects, use a supported ROS 2 distribution.
1.β¦