Agent Skills
返回列表
💻

Docker ROS 2 开发环境

开发编程 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,安装 @user_3c6cb52e/docker-ros2-development-4wa1。

技能介绍

问题:本地 ROS 2 环境经常“能跑,但难复现”

ROS 2 开发依赖 colcon 工作区、DDS 发现、节点、工具链与设备驱动。直接在主机装依赖容易遇到版本漂移,多机器人系统里容器间通信失败、rviz2 无显示、摄像头/LiDAR 无法透传、CI 构建缓存低效等问题尤其常见。该技能面向的是“用容器把开发环境和部署环境对齐”的工程问题。

工作方式:围绕 Docker 与 ROS 2 工具链生成配置

它会把任务拆成几类可落地的输出:

  • 为 ROS 2 workspace 编写 Dockerfile,关注 colcon build 的依赖安装与层缓存。
  • 用 docker-compose 组织多容器机器人系统,处理服务名、网络、端口和环境变量。
  • 排查 CycloneDDS / FastDDS 在容器间的 DDS discovery 失败,而不是只把节点跑起来。
  • 为感知节点配置 NVIDIA Container Toolkit GPU 透传,并处理 X11 / Wayland 显示转发,让 rviz2、rqt 可用。
  • 为相机、LiDAR、串口设备规划 USB device passthrough。
  • 基于 Docker 构建 CI/CD 流水线、测试运行器,以及 VS Code 的 devcontainer 配置。
  • 结合官方 OSRF 镜像的分层选择原则,尽量使用满足依赖的较小基础镜像。

适用边界

适合需要可复现开发容器、多节点调试、设备透传和 CI 化的 ROS 2 团队;不适合替代 ROS 2 节点算法本身,也不保证在缺失 GPU、显示服务器或设备权限的平台上直接完成硬件联调。

使用场景

  • 在本地用 docker-compose 拉起多个 ROS 2 节点,排查 CycloneDDS 跨容器发现失败。
  • 为感知节点配置 NVIDIA 容器透传,并转发 X11 显示让 rviz2 能打开。
  • 把 colcon workspace 构建成带缓存的 Docker 镜像,用于 CI 中的构建和测试。
  • 为 VS Code 配置 devcontainer,安装 ROS 2 扩展并复用统一开发环境。

适合人员

  • 负责 ROS 2 机器人节点联调的机器人工程师,需要可复现的容器化调试环境。
  • 维护 CI/CD 流水线的 DevOps 工程师,要把 colcon 构建与测试跑在 Docker 中。
  • 使用 rviz2、rqt 和传感器设备的嵌入式/感知工程师,需要显示与 USB 设备透传配置。
  • 在 VS Code 中做 ROS 2 开发的软件工程师,需要 devcontainer 统一扩展和环境。