> ## Documentation Index
> Fetch the complete documentation index at: https://docs.peaq.xyz/llms.txt
> Use this file to discover all available pages before exploring further.

# Installation

> Set up the peaq ROS 2 workspace with Docker or a native Humble environment.

The ROS 2 packages live in the [`peaq-robotics-ros2`](https://github.com/peaqnetwork/peaq-robotics-ros2) repository. Clone the workspace and choose either a Docker-based workflow or a native ROS 2 Humble setup.

## Docker Workflow (Recommended)

```bash theme={"theme":{"light":"github-light-default","dark":"github-dark"}}
git clone https://github.com/peaqnetwork/peaq-robotics-ros2.git
cd peaq-robotics-ros2

# Build the development image
docker build -t peaq-ros2:latest .

# Start a container with workspace mounted
docker run -it --rm \
  --name peaq-ros2-dev \
  -v "$(pwd)":/work \
  -w /work \
  -p 5001:5001 -p 8080:8080 \
  peaq-ros2:latest

# Inside the container
source /opt/ros/humble/setup.bash
colcon build
source install/setup.bash
```

The Docker image installs ROS 2 Humble, Python dependencies, and build tooling. Exposed ports (`5001`, `8080`) let IPFS nodes or optional managed gateways run locally when using the storage bridge.

## Native Humble Setup

```bash theme={"theme":{"light":"github-light-default","dark":"github-dark"}}
git clone https://github.com/peaqnetwork/peaq-robotics-ros2.git
cd peaq-robotics-ros2

# Install Python requirements
pip install -r requirements.txt

# Ensure ROS 2 Humble is installed and sourced
source /opt/ros/humble/setup.bash

# (Optional) install additional system dependencies
sudo rosdep init 2>/dev/null || true
rosdep update
rosdep install --from-paths . --ignore-src -r -y || true

# Build the workspace
colcon build
source install/setup.bash
```

### IPFS (with Optional Managed Pinning)

The storage bridge relies on an IPFS node. Follow the repository guide to install Kubo, run `ipfs daemon`, and optionally supply managed gateway credentials (e.g., Pinata, web3.storage) in the configuration file when required.

Continue with [configuration](/peaqchain/sdk-reference/robotics-sdk/ros2/getting-started/configuration) once the workspace builds successfully.
