Docker 容器内运行 ROS Noetic 图形界面(rqt_image_view)极简教程总结

一、前置准备

  1. 宿主机终端开放图形权限:
xhost +local:root
  1. 确认容器正常运行,记下容器ID:aa0159e379a2

二、一键执行命令

docker exec -e DISPLAY=$DISPLAY aa0159e379a2 bash -c 'source /opt/ros/noetic/setup.bash && export ROS_MASTER_URI=http://127.0.0.1:11311 && rqt_image_view'

三、核心要点

  1. -e DISPLAY=$DISPLAY:传递宿主机显示变量,支持容器弹出GUI窗口;
  2. source 加载ROS环境,再配置ROS_MASTER_URI
  3. 命令必须首尾单引号闭合,否则执行报错;
  4. 图形弹窗失败优先执行 xhost +local:root 授权。

四、通用复用模板

替换容器ID即可用:

docker exec -e DISPLAY=$DISPLAY 容器ID bash -c 'source /opt/ros/noetic/setup.bash && export ROS_MASTER_URI=http://127.0.0.1:11311 && 要启动的ROS图形工具'

更多推荐