Development Container
The project ships a dev container (.devcontainer/) that provides the full toolchain —
ROS2 Jazzy, Gazebo Harmonic, colcon and all Python dependencies — on any OS (Linux, macOS,
Windows). It replaces the old ROS Noetic Docker images.
Usage
Open the repository in VS Code (or any editor supporting the dev-container spec) and choose
“Reopen in Container”. The image is built from .devcontainer/Dockerfile and the
workspace is built automatically by .devcontainer/post-create.sh.
Image contents
ros:jazzy-ros-baseplus the apt packages listed ininit/packages.txt(ROS2 Jazzy desktop, Gazebo Harmonic /ros-gz, build tools).uv installs the Python dependencies declared in
pyproject.toml(locked inuv.lock) into/opt/venv. The venv is created with--system-site-packagesso ROS2’srclpyand the generated message modules stay importable alongside the project’s own dependencies (shapely, numpy, …).
The same image is built and pushed by the GitLab CI pipeline (see .gitlab-ci.yml,
job build-devcontainer-image) and reused as the image: for the CI jobs.
Native install
On Ubuntu 24.04 you can install everything directly with ./init/init.sh instead of using
the container (see the project README).