Skip to content

About

This repository has docker compose files to get started with the bootcamp

Resources

Stars

12 stars

Watchers

0 watching

Forks

Latest commit

 

History

26 Commits

Folders and files

Repository files navigation

Bootcamp: Robotics and AI for Beginners with ROS 2 & NVIDIA Isaac

This repository has docker compose files to get started with the bootcamp

Table of Contents

System Prerequisites

For a local setup, use a machine with:

  • Ubuntu 22.04 or Ubuntu 24.04
  • NVIDIA RTX 3050 or better
  • More than 6 GB GPU VRAM

If you are using Windows or macOS and do not have a compatible local Linux + NVIDIA setup, you can use a cloud GPU service such as vast.ai.

Optional: Native Install (Isaac Sim + ROS 2)

Use this section if you want to install Isaac Sim manually and install ROS 2 directly on your Ubuntu system (outside Docker).

Download Isaac Sim (Manual)

Download Isaac Sim using this link: Doc

https://download.isaacsim.omniverse.nvidia.com/isaac-sim-standalone-5.1.0-linux-x86_64.zip

After downloading, extract it:

unzip isaac-sim-standalone-5.1.0-linux-x86_64.zip

Install ROS 2 with One-Line Script

Repository:

https://github.com/runtimerobotics/ros2_oneline_install

Install ROS 2 Jazzy:

wget -c https://raw.githubusercontent.com/runtimerobotics/ros2_oneline_install/main/ros2_install_jazzy.sh && chmod +x ./ros2_install_jazzy.sh && ./ros2_install_jazzy.sh

Install ROS 2 Humble:

wget -c https://raw.githubusercontent.com/runtimerobotics/ros2_oneline_install/main/ros2_install_humble.sh && chmod +x ./ros2_install_humble.sh && ./ros2_install_humble.sh

Docker Installation

This section explains how to install Docker so you can run the bootcamp containers. For Ubuntu, a script is provided for automatic installation. For Windows, follow the WSL + Docker Desktop steps. For Vast.ai Ubuntu Desktop VM, Docker is already pre-installed.

Ubuntu 24.04 and 22.04

Run the setup script (automatic installation):

wget https://raw.githubusercontent.com/therobocademy/ros2_nvidia_isaac_bootcamp/refs/heads/main/setup_docker_ubuntu.sh && chmod +x setup_docker_ubuntu.sh && sudo ./setup_docker_ubuntu.sh

Manual installation video for Ubuntu 24.04:

Docker install on Ubuntu 24.04

Manual installation video for Ubuntu 22.04:

Docker install on Ubuntu 22.04

Verify:

docker --version

Windows 11/10 (WSL + Docker Desktop)

  1. Install WSL (Ubuntu 24.04) in PowerShell (as Administrator):
wsl --install -d Ubuntu-24.04
  1. Install Docker Desktop: https://www.docker.com/products/docker-desktop/

  2. In Docker Desktop, enable: Settings -> Resources -> WSL Integration -> Ubuntu-24.04

  3. Verify:

docker --version

Windows 11 video:

Docker setup on Windows 11

Windows 10 video:

Docker setup on Windows 10

Cloud Setup using Vast.ai (Ubuntu 22.04 Desktop VM with GPU)

If you do not have a compatible local Linux + NVIDIA GPU, you can rent a cloud GPU using Vast.ai and use the pre-configured Ubuntu Desktop VM template (GUI + Docker already installed).

Step 1: Create a Vast.ai Account

Sign up at Vast.ai and add credits.

Step 2: Choose Instance

  • GPU: RTX 3060 / 3090 / A5000 or better
  • VRAM: Minimum 12 GB (16+ GB recommended)
  • Disk: >= 50 GB

Step 3: Select Template

  • Select Ubuntu Desktop (VM)
  • This template includes GUI, NVIDIA drivers, and Docker pre-installed

Step 4: Access Desktop via VNC (No SSH Required)

  • Open Vast.ai dashboard
  • Click your running instance
  • Click Open
  • This launches the Ubuntu Desktop in your browser (VNC/Web Desktop)
  • Login password is often password; check the template README to confirm the current credentials.

Step 5: Verify GPU inside Desktop Terminal

nvidia-smi

Note: Docker is already installed in the Ubuntu Desktop VM template. No installation needed.

Download Workshop Docker Image

Run the following command in the terminal of the environment where you will run the workshop:

  • Local Ubuntu PC terminal, OR
  • Vast.ai Ubuntu Desktop VM terminal (inside the VNC desktop)
docker pull therobocademy/ros2_nvidia_workshop:latest

Important: If you are using Vast.ai, open the Ubuntu Desktop (VNC), then open Terminal and run the docker pull command there. Do not run it on your local PC if you plan to run the container inside the Vast.ai VM.

Start Docker Compose (GUI Enabled)

The compose file supports Linux and Windows (WSL) GUI forwarding.

Ubuntu 22.04 / 24.04 (X11)

From your host terminal:

sudo apt update
sudo apt install -y git

git clone https://github.com/therobocademy/ros2_nvidia_isaac_bootcamp.git

cd ros2_nvidia_isaac_bootcamp

xhost +local:docker

export DISPLAY=${DISPLAY:-:0}
export DOCKER_NETWORK_MODE=host

mkdir -p ~/docker/isaac-sim/cache/{kit,ov,pip,glcache,computecache} ~/docker/isaac-sim/{logs,data,documents}

docker compose up workshop

In Terminal 2 (For taking a new terminal for Docker container)

docker exec -it isaac-sim bash

Vast.ai Ubuntu Desktop VM (VNC Desktop)

Open Terminal inside the Vast.ai Ubuntu Desktop (in browser VNC), then run:

sudo apt update
sudo apt install -y git

git clone https://github.com/therobocademy/ros2_nvidia_isaac_bootcamp.git

cd ros2_nvidia_isaac_bootcamp

xhost +local:docker

export DISPLAY=${DISPLAY:-:0}
export DOCKER_NETWORK_MODE=host

mkdir -p ~/docker/isaac-sim/cache/{kit,ov,pip,glcache,computecache} ~/docker/isaac-sim/{logs,data,documents}

docker compose up workshop

In Terminal 2 (For taking a new terminal for Docker container)

docker exec -it isaac-sim bash

Windows 11/10 (WSL2 + Docker Desktop)

  1. Start an X server on Windows (VcXsrv/X410) with access control disabled (or allow your WSL IP).
  2. Run these commands in Ubuntu WSL terminal:
sudo apt update
sudo apt install -y git

git clone https://github.com/therobocademy/ros2_nvidia_isaac_bootcamp.git

cd ros2_nvidia_isaac_bootcamp

unset DISPLAY
unset DOCKER_NETWORK_MODE

mkdir -p ~/docker/isaac-sim/cache/{kit,ov,pip,glcache,computecache} ~/docker/isaac-sim/{logs,data,documents}

docker compose up workshop
docker exec -it isaac-sim bash

Notes for Windows:

  • Compose defaults DISPLAY to host.docker.internal:0.0 when DISPLAY is unset.
  • Start Docker Desktop before docker compose up.
  • Keep WSL integration enabled for your Ubuntu distro.

Then launch your GUI app inside the container (for example, rviz2 or Isaac Sim command used in the workshop).

Possible Issues

If you see:

Failed to create texture cache in /isaac-sim/.cache/ov/texturecache
Failed to create texture cache folder /isaac-sim/.cache/ov/texturecache

Run:

chmod -R 777 ~/docker/isaac-sim

Open in Dev Container (VS Code / Cursor)

This repository also includes a ready-to-use Dev Container at .devcontainer/devcontainer.json. It reuses the existing docker-compose.yml service, including:

  • NVIDIA GPU access
  • X11 GUI forwarding
  • Isaac Sim cache/data mounts
  • The repository mounted at /home/isaac-sim/workspaces

Linux Host (Ubuntu / Vast.ai Desktop)

Before opening the Dev Container, allow local Docker containers to use your X server:

xhost +local:docker
export DISPLAY=${DISPLAY:-:0}

Then open the folder in VS Code or Cursor and choose:

  • Dev Containers: Reopen in Container

The Dev Container mounts your host X11 socket and ~/.Xauthority, so GUI apps launched inside the container can open on your desktop.

Start Isaac Sim in GUI mode from inside the container with:

./scripts/launch_isaac_sim.sh

Windows with WSL2

Start your Windows X server first (VcXsrv/X410), then from the WSL terminal set:

export DISPLAY=${DISPLAY:-host.docker.internal:0.0}

Then reopen the project in the Dev Container from VS Code / Cursor.

If you want streaming or a no-display workflow instead of a desktop window, launch:

./scripts/launch_isaac_sim_headless.sh

Notes

  • If GUI apps fail to open on Linux, run xhost +local:docker again on the host and reopen the container.
  • The Dev Container uses the same workshop service as Docker Compose, so command-line and editor workflows stay aligned.
  • Isaac Sim headless mode does not create a normal desktop window. Messages like Cannot set window title without a default window mean Kit started without a GUI window, which is expected for headless mode and a sign to use ./scripts/launch_isaac_sim.sh if you wanted the desktop app.

About

This repository has docker compose files to get started with the bootcamp

Resources

Stars

12 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages