Interactive CLI wizard for generating ROS2 Docker environments
Project description
🤖 ros2-dockergen
One command. Interactive. Zero fuss.
Generate production-readyDockerfile+docker-compose.yml+README.mdfor 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/cudabase 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 matchingdocker-compose.ymland a workspace-specificREADME.mdwith 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
📁 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.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file ros2_dockergen-1.0.2.tar.gz.
File metadata
- Download URL: ros2_dockergen-1.0.2.tar.gz
- Upload date:
- Size: 13.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
83480cd5ad41c676e20852dc8b25b5a4c8171cc380375d173f5b3f75052b388d
|
|
| MD5 |
1bf4c5221b7701431a5da90cb5f7b119
|
|
| BLAKE2b-256 |
f4abbb804d730416cbb099aed132823c735a7d1e169b50db16d62c918d1bd551
|
Provenance
The following attestation bundles were made for ros2_dockergen-1.0.2.tar.gz:
Publisher:
publish.yml on ppswaroopa/ros2-dockergen
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ros2_dockergen-1.0.2.tar.gz -
Subject digest:
83480cd5ad41c676e20852dc8b25b5a4c8171cc380375d173f5b3f75052b388d - Sigstore transparency entry: 1174495171
- Sigstore integration time:
-
Permalink:
ppswaroopa/ros2-dockergen@9dc16b6e5aa5fcd5049cb9ba1b4b5d924f27ba68 -
Branch / Tag:
refs/tags/v1.0.2 - Owner: https://github.com/ppswaroopa
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@9dc16b6e5aa5fcd5049cb9ba1b4b5d924f27ba68 -
Trigger Event:
push
-
Statement type:
File details
Details for the file ros2_dockergen-1.0.2-py3-none-any.whl.
File metadata
- Download URL: ros2_dockergen-1.0.2-py3-none-any.whl
- Upload date:
- Size: 16.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3386e4566fbdd477a07ae7b9f1439ceac826b407676b5fd8a9017a6f8451b9d8
|
|
| MD5 |
4360716f40948326df2b69e7d1d01315
|
|
| BLAKE2b-256 |
3947b343592110c04ffd44caed7d838e8c32538c56f8d81747aa646200b86926
|
Provenance
The following attestation bundles were made for ros2_dockergen-1.0.2-py3-none-any.whl:
Publisher:
publish.yml on ppswaroopa/ros2-dockergen
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
ros2_dockergen-1.0.2-py3-none-any.whl -
Subject digest:
3386e4566fbdd477a07ae7b9f1439ceac826b407676b5fd8a9017a6f8451b9d8 - Sigstore transparency entry: 1174495179
- Sigstore integration time:
-
Permalink:
ppswaroopa/ros2-dockergen@9dc16b6e5aa5fcd5049cb9ba1b4b5d924f27ba68 -
Branch / Tag:
refs/tags/v1.0.2 - Owner: https://github.com/ppswaroopa
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@9dc16b6e5aa5fcd5049cb9ba1b4b5d924f27ba68 -
Trigger Event:
push
-
Statement type: