What problem does it solve?
This Skill provides a comprehensive guide to containerizing ROS2 workspaces, setting up docker-compose for robot software stacks, and managing GPU workloads, enabling efficient development and deployment of robotic systems.
Core Features & Use Cases
- Containerization: Learn best practices for building multi-stage Dockerfiles for ROS2 workspaces.
- Docker Compose: Set up and manage multi-container systems for robotic software stacks.
- DDS Discovery: Configure unicast peer lists for CycloneDDS and FastDDS across containers.
- GPU Passthrough: Set up NVIDIA Container Toolkit for GPU passthrough for perception nodes.
- Display Forwarding: Forward X11 or Wayland displays for rviz2 and GUI tools.
- USB Device Passthrough: Manage USB device passthrough for cameras and serial devices.
- CI/CD Pipelines: Build CI/CD pipelines with Docker-based ROS2 builds and test runners.
- Dev Container Configuration: Create devcontainer configurations for VS Code with ROS2 extensions.
- Layer Caching: Optimize Docker layer caching for colcon workspace builds.
- Dev vs Deploy: Design dev-vs-deploy container strategies with multi-stage builds.
- Use Case: If you are developing a ROS2 application that requires GPU processing and need to efficiently manage dependencies and environment configurations, this skill will help you set up a Docker-based development environment that mirrors your production environment.
Quick Start
Use the docker-ros2-development skill to containerize your ROS2 workspace and set up a development environment.