ika-rwth-aachen/docker-ros

docker-ros automatically builds development and deployment Docker images for your ROS-based repositories.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Activelast commit Jun 11, 2026
License
MIT

Pinned Snippet

workflow.ymlSHA-pinned
uses: ika-rwth-aachen/docker-ros@3a367585f79e0546bca11da83830ad4c49e9cec5 # v1.10.0

tags can be moved; commit SHAs can't. why a SHA?

namedescriptionrequireddefault
additional-debs-fileRelative filepath to file containing additional apt deb packages to installdocker/additional-debs.txt
additional-files-dirRelative path to directory containing additional files to copy into imagedocker/additional-files
additional-pip-fileRelative filepath to file containing additional pip packages to installdocker/additional-pip-requirements.txt
additional-slim-build-argsAdditional arguments appended to `mint slim` after `slim-build-args`
after-dependency-installation-scriptRelative filepath to script containing commands to run after dependency installationdocker/custom.sh
base-imageBase image name:tagyes
before-dependency-identification-scriptRelative filepath to script containing commands to run before dependency identificationdocker/before_dependency_identification.sh
before-dependency-installation-scriptRelative filepath to script containing commands to run before dependency installationdocker/before_dependency_installation.sh
blacklisted-packages-fileRelative filepath to file containing blacklisted packages to remove from workspacedocker/blacklisted-packages.txt
build-contextBuild context of Docker build process${{ github.workspace }}
buildx-attestationsValue passed to `docker buildx build --provenance` and `--sbom` (use `false` for older registries)false
commandLaunch command of run image (required if target=run)
cmake-argsCMake arguments to pass to `colcon build`-DCMAKE_BUILD_TYPE=Release
dev-image-nameImage name of dev imageghcr.io/${{ github.repository }}
dev-image-tagImage tag of dev image
disable-ros-installationDisable 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 OSfalse
enable-checkoutEnable checkout action to (re-)download your repository prior to running the pipelinetrue
enable-checkout-lfsEnable Git LFS support for the checkout actiontrue
enable-checkout-submodulesEnable submodules for the checkout action (false|true|recursive)recursive
enable-industrial-ciEnable industrial_cifalse
enable-push-as-latestPush images with tag `latest`/`latest-dev` in addition to the configured image namesfalse
enable-recursive-additional-debsEnable recursive discovery of files named `additional-debs-file`false
enable-recursive-additional-pipEnable recursive discovery of files named `additional-pip-file`false
enable-recursive-after-dependency-installation-scriptEnable recursive discovery of files named `after-dependency-installation-script`false
enable-recursive-before-dependency-installation-scriptEnable recursive discovery of files named `before-dependency-installation-script`false
enable-recursive-blacklisted-packagesEnable recursive discovery of files named `blacklisted-packages-file`false
enable-singlearch-pushEnable push of single arch images with [-amd64|-arm64] postfixfalse
enable-slimEnable an extra slimmed run image via mint (only if run stage is targeted)true
git-https-passwordPassword for cloning private Git repositories via HTTPS${{ github.token }}
git-https-serverServer URL (without protocol) for cloning private Git repositories via HTTPSgithub.com
git-https-userUsername for cloning private Git repositories via HTTPS${{ github.actor }}
git-ssh-known-host-keysKnown SSH host keys for cloning private Git repositories via SSH (may be obtained using `ssh-keyscan`)
git-ssh-private-keySSH private key for cloning private Git repositories via SSH
image-nameImage name of run imageghcr.io/${{ github.repository }}
image-tagImage tag of run imagelatest
label-authorsSet `org.opencontainers.image.authors` label (unset by default)
label-descriptionOverride `org.opencontainers.image.description` label (defaults to the GitHub repository description from the event payload when available, otherwise unset)
label-licensesOverride `org.opencontainers.image.licenses` label (defaults to the repository root `LICENSE` file when detected, otherwise unset)
label-maintainerSet `maintainer` label (unset by default)
label-urlOverride `org.opencontainers.image.url` label (defaults to the repository URL from CI metadata or `origin`)
label-versionOverride `org.opencontainers.image.version` label (defaults to the tag name in tag pipelines or the current commit SHA)
platformTarget platform architecture (comma-separated list) [amd64|arm64|...]
registryDocker registry to push images toghcr.io
registry-passwordDocker registry password${{ github.token }}
registry-userDocker registry username${{ github.actor }}
ros-distroROS Distro (required if ROS is not installed in `base-image`)
rmw-implementationRMW implementation to use (only for ROS 2)rmw_fastrtps_cpp
slim-build-argsArguments 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-nameImage name of slim run imageghcr.io/${{ github.repository }}
slim-image-tagImage tag of slim run image
targetTarget stage of Dockerfile (comma-separated list) [dev|run]run

no outputs