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.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

ros2_dockergen-1.2.0.tar.gz (16.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ros2_dockergen-1.2.0-py3-none-any.whl (18.5 kB view details)

Uploaded Python 3

File details

Details for the file ros2_dockergen-1.2.0.tar.gz.

File metadata

  • Download URL: ros2_dockergen-1.2.0.tar.gz
  • Upload date:
  • Size: 16.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ros2_dockergen-1.2.0.tar.gz
Algorithm Hash digest
SHA256 e0f135ed3a25914a6a59bcaa0da5869e384f43fecfc1bd723597ac15962abaee
MD5 84a1bc6641a7f273224a7ff90057e5cf
BLAKE2b-256 0ba40fa958f003dfad643b010dff7d90d970832adf4d698f6e3e058d455d1e38

See more details on using hashes here.

Provenance

The following attestation bundles were made for ros2_dockergen-1.2.0.tar.gz:

Publisher: publish.yml on ppswaroopa/ros2-dockergen

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file ros2_dockergen-1.2.0-py3-none-any.whl.

File metadata

  • Download URL: ros2_dockergen-1.2.0-py3-none-any.whl
  • Upload date:
  • Size: 18.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for ros2_dockergen-1.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 ad951bc894905a8a13019fa8e0acb2ce01d5636d27d998edb96b8a3aa35b3962
MD5 8a2a961beec9293500f049103c05f7b9
BLAKE2b-256 88da5af777e4e430de1580ae16d359c6b0e284a4e21f9f0ac2c95d29a22d7f5c

See more details on using hashes here.

Provenance

The following attestation bundles were made for ros2_dockergen-1.2.0-py3-none-any.whl:

Publisher: publish.yml on ppswaroopa/ros2-dockergen

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

1.2.0 This release

2 files

1.1.0

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page