docker-ros2-development

Containerize ROS2 workspaces with docker-compose and configure GPU passthrough.

Updated May 21, 2026
One-click install
npx skills add https://github.com/KAIROS7-team3/Final_project --skill docker-ros2-development-kairos7-team3
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: docker-ros2-development
Source: https://github.com/KAIROS7-team3/Final_project/tree/main/.claude/skills/docker-ros2-development
Command: npx skills add https://github.com/KAIROS7-team3/Final_project --skill docker-ros2-development-kairos7-team3

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires docker, ros2, nvidia-container-toolkit, ccache, and includes scripts (resource) and references (resource) and assets (resource) components.

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.

Frequently Asked Questions about docker-ros2-development

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I set up GPU passthrough in a ROS2 Docker container?

To set up GPU passthrough for ROS2 Docker containers, you configure the NVIDIA Container Toolkit. This allows perception nodes running in your containerized robot software stack to directly access host GPU resources.

How do I configure DDS discovery across multiple ROS2 Docker containers?

You configure DDS discovery across ROS2 Docker containers by setting up unicast peer lists. This Skill provides guidance on configuring peer lists specifically for CycloneDDS and FastDDS to ensure seamless inter-container communication.

Can I forward X11 or Wayland displays for rviz2 inside a Docker container?

Yes, you can forward X11 or Wayland displays for rviz2 and other GUI tools from a Docker container. This Skill covers the display forwarding configurations needed to visualize ROS2 data on your host machine.

What's the best way to manage USB device passthrough for ROS2 cameras and serial devices?

The best way to manage USB device passthrough for ROS2 cameras and serial devices is through specific Docker volume mappings and device flags. This allows your containerized ROS2 nodes to directly access connected hardware.

Do I need NVIDIA Container Toolkit to containerize a ROS2 workspace?

You only need the NVIDIA Container Toolkit if your ROS2 application requires GPU processing for tasks like perception. Basic ROS2 workspace containerization requires Docker, ROS2, and ccache for build caching.

How do I optimize Docker layer caching for colcon workspace builds?

You optimize Docker layer caching for colcon workspace builds by structuring multi-stage Dockerfiles to isolate dependency installation from source code compilation. This dev-vs-deploy strategy significantly reduces rebuild times.