Skip to main content

🤖 ros2-dockergen

CI Publish to PyPI PyPI version License: MIT Python 3.10+ Web UI


ROS2 DockerGen Flow


One command. Interactive. Zero fuss.
Generate production-ready Dockerfile + docker-compose.yml + README.md for any ROS2 project — straight from your terminal or on the webpage here


Quick Install

From PyPI (Recommended)

pip install ros2-dockergen

One-line installer (Bash)

curl -fsSL https://raw.githubusercontent.com/ppswaroopa/ros2-dockergen/main/install.sh | bash

Features

  • Full Distribution Support: Choose between Jazzy, Humble, and Kilted ROS2 distros.
  • GPU Acceleration: Automatically configures nvidia/cuda base images and runtime capabilities if CUDA or TensorRT is selected.
  • User Choice: Handles non-root user creation with automatic UID/GID mapping to prevent host volume permission headaches.
  • Comprehensive Tooling: Toggle common ROS2 packages (Nav2, MoveIt2, SLAM Toolbox, MoveIt, Gazebo GZ, etc.) and dev tools (colcon, rosdep, Oh-My-Zsh, SSH, X11).
  • Complete Output: Generates not just a Dockerfile, but also a matching docker-compose.yml and a workspace-specific README.md with instructions.
  • Web Parity: Identical logic engine shared with the Web UI.

Usage

Simply run:

ros2-dockergen

The interactive wizard will walk you through 8 steps to configure your environment.

Command Line Options

ros2-dockergen --help    # Show help
ros2-dockergen --version # Show version

Local CI With act

To reproduce the main GitHub Actions workflow locally, install act and run:

./scripts/run_act.sh

By default this runs the CI jobs one-by-one so local Docker usage stays manageable and each job's output is easy to read.

If you want the original full-workflow act behavior instead, run:

./scripts/run_act.sh full

📁 Project Structure

  • src/ros2_dockergen/: Core Python package (CLI + Logic).
  • src/core.js: Shared engine (ESM) for Web and Node.js.
  • index.html: Stunning browser-based interactive generator.
  • docs/: Visual assets and project documentation.
  • tests/: Parity validation suite (Ensures Python/JS outputs are byte-identical).

🔗 Related Resources


License

Released under the MIT License. Copyright © 2026 Pranava Swaroopa.

Metadata

Release files for ros2-dockergen 1.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ros2-dockergen 1.2.0
File Size Uploaded
ros2_dockergen-1.2.0.tar.gz 16.2 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for ros2-dockergen 1.2.0
File Interpreter ABI Platform
ros2_dockergen-1.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 34.7 kB

Release files / ros2_dockergen-1.2.0.tar.gz

Download URL ros2_dockergen-1.2.0.tar.gz
Size 16.2 kB
Tags Source
SHA-256 checksum
How to use checksums
e0f135ed3a25914a6a59bcaa0da5869e384f43fecfc1bd723597ac15962abaee
BLAKE2b-256 checksum
How to use checksums
0ba40fa958f003dfad643b010dff7d90d970832adf4d698f6e3e058d455d1e38
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 11, 2026.

Transparency log

Release files / ros2_dockergen-1.2.0-py3-none-any.whl

Download URL ros2_dockergen-1.2.0-py3-none-any.whl
Size 18.5 kB
Tags Python 3
SHA-256 checksum
How to use checksums
ad951bc894905a8a13019fa8e0acb2ce01d5636d27d998edb96b8a3aa35b3962
BLAKE2b-256 checksum
How to use checksums
88da5af777e4e430de1580ae16d359c6b0e284a4e21f9f0ac2c95d29a22d7f5c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/6.1.0 CPython/3.13.12

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Apr 11, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 release files

1.1.0

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page