ika-rwth-aachen/docker-ros
docker-ros automatically builds development and deployment Docker images for your ROS-based repositories.
View on GitHubTrust Signals
- Scorecard Score
- not yet scored
- Maintenance Recency
- Activelast commit Jun 11, 2026
- License
- MIT
Pinned Snippet
uses: ika-rwth-aachen/docker-ros@3a367585f79e0546bca11da83830ad4c49e9cec5 # v1.10.0tags can be moved; commit SHAs can't. why a SHA?
Inputs
| name | description | required | default |
|---|---|---|---|
| additional-debs-file | Relative filepath to file containing additional apt deb packages to install | — | docker/additional-debs.txt |
| additional-files-dir | Relative path to directory containing additional files to copy into image | — | docker/additional-files |
| additional-pip-file | Relative filepath to file containing additional pip packages to install | — | docker/additional-pip-requirements.txt |
| additional-slim-build-args | Additional arguments appended to `mint slim` after `slim-build-args` | — | — |
| after-dependency-installation-script | Relative filepath to script containing commands to run after dependency installation | — | docker/custom.sh |
| base-image | Base image name:tag | yes | — |
| before-dependency-identification-script | Relative filepath to script containing commands to run before dependency identification | — | docker/before_dependency_identification.sh |
| before-dependency-installation-script | Relative filepath to script containing commands to run before dependency installation | — | docker/before_dependency_installation.sh |
| blacklisted-packages-file | Relative filepath to file containing blacklisted packages to remove from workspace | — | docker/blacklisted-packages.txt |
| build-context | Build context of Docker build process | — | ${{ github.workspace }} |
| buildx-attestations | Value passed to `docker buildx build --provenance` and `--sbom` (use `false` for older registries) | — | false |
| command | Launch command of run image (required if target=run) | — | — |
| cmake-args | CMake arguments to pass to `colcon build` | — | -DCMAKE_BUILD_TYPE=Release |
| dev-image-name | Image name of dev image | — | ghcr.io/${{ github.repository }} |
| dev-image-tag | Image tag of dev image | — | — |
| disable-ros-installation | Disable automatic installation of `ros-$ROS_DISTRO-ros-core` package, e.g., if ROS is already installed in `base-image` and package is not available for the OS | — | false |
| enable-checkout | Enable checkout action to (re-)download your repository prior to running the pipeline | — | true |
| enable-checkout-lfs | Enable Git LFS support for the checkout action | — | true |
| enable-checkout-submodules | Enable submodules for the checkout action (false|true|recursive) | — | recursive |
| enable-industrial-ci | Enable industrial_ci | — | false |
| enable-push-as-latest | Push images with tag `latest`/`latest-dev` in addition to the configured image names | — | false |
| enable-recursive-additional-debs | Enable recursive discovery of files named `additional-debs-file` | — | false |
| enable-recursive-additional-pip | Enable recursive discovery of files named `additional-pip-file` | — | false |
| enable-recursive-after-dependency-installation-script | Enable recursive discovery of files named `after-dependency-installation-script` | — | false |
| enable-recursive-before-dependency-installation-script | Enable recursive discovery of files named `before-dependency-installation-script` | — | false |
| enable-recursive-blacklisted-packages | Enable recursive discovery of files named `blacklisted-packages-file` | — | false |
| enable-singlearch-push | Enable push of single arch images with [-amd64|-arm64] postfix | — | false |
| enable-slim | Enable an extra slimmed run image via mint (only if run stage is targeted) | — | true |
| git-https-password | Password for cloning private Git repositories via HTTPS | — | ${{ github.token }} |
| git-https-server | Server URL (without protocol) for cloning private Git repositories via HTTPS | — | github.com |
| git-https-user | Username for cloning private Git repositories via HTTPS | — | ${{ github.actor }} |
| git-ssh-known-host-keys | Known SSH host keys for cloning private Git repositories via SSH (may be obtained using `ssh-keyscan`) | — | — |
| git-ssh-private-key | SSH private key for cloning private Git repositories via SSH | — | — |
| image-name | Image name of run image | — | ghcr.io/${{ github.repository }} |
| image-tag | Image tag of run image | — | latest |
| label-authors | Set `org.opencontainers.image.authors` label (unset by default) | — | — |
| label-description | Override `org.opencontainers.image.description` label (defaults to the GitHub repository description from the event payload when available, otherwise unset) | — | — |
| label-licenses | Override `org.opencontainers.image.licenses` label (defaults to the repository root `LICENSE` file when detected, otherwise unset) | — | — |
| label-maintainer | Set `maintainer` label (unset by default) | — | — |
| label-url | Override `org.opencontainers.image.url` label (defaults to the repository URL from CI metadata or `origin`) | — | — |
| label-version | Override `org.opencontainers.image.version` label (defaults to the tag name in tag pipelines or the current commit SHA) | — | — |
| platform | Target platform architecture (comma-separated list) [amd64|arm64|...] | — | — |
| registry | Docker registry to push images to | — | ghcr.io |
| registry-password | Docker registry password | — | ${{ github.token }} |
| registry-user | Docker registry username | — | ${{ github.actor }} |
| ros-distro | ROS Distro (required if ROS is not installed in `base-image`) | — | — |
| rmw-implementation | RMW implementation to use (only for ROS 2) | — | rmw_fastrtps_cpp |
| slim-build-args | Arguments to `mint slim` (except for `--target` and `--tag`) | — | --sensor-ipc-mode proxy --continue-after=30 --show-clogs --http-probe=false --env DOCKER_UID=23456 --env DOCKER_GID=23456 --env DOCKER_USER=dockerslimprobe --include-path /opt/ros --include-path /docker-ros/ws/install --include-path /etc/ld.so.cache --include-path /etc/ld.so.conf --include-path /etc/ld.so.conf.d --preserve-path /etc/passwd --preserve-path /etc/group --preserve-path /etc/shadow --preserve-path /etc/gshadow --exclude-pattern /home/dockerslimprobe --exclude-pattern /home/dockerslimprobe/** --exclude-pattern /var/mail/dockerslimprobe |
| slim-image-name | Image name of slim run image | — | ghcr.io/${{ github.repository }} |
| slim-image-tag | Image tag of slim run image | — | — |
| target | Target stage of Dockerfile (comma-separated list) [dev|run] | — | run |
Outputs
no outputs