Installation#
This page describes how to install Isaac Lab Arena, either natively with uv
or from source inside a Docker container.
Installation method |
Evaluation |
Imitation learning |
Reinforcement learning |
Agentic environment generation |
|---|---|---|---|---|
Docker |
✓ |
✓ |
✓ |
✓ |
uv |
✓ |
✓ |
✓ |
✓ |
Supported Systems#
Isaac Lab Arena runs on Isaac Sim 6.0.0 and Isaac Lab 3.0.0.
The dependencies are installed automatically by either workflow below.
Hardware requirements for Isaac Lab Arena are shared with Isaac Sim, and are detailed in
Isaac Sim Requirements.
Native uv developer setup#
Isaac Lab Arena can be installed natively with uv;
the committed lockfile pins the complete environment. Isaac Lab is installed
editable from the submodules/IsaacLab checkout.
Clone the repository:
git clone --branch release/0.3.0 --recurse-submodules git@github.com:isaac-sim/IsaacLab-Arena.git
cd IsaacLab-Arena
Sync the environment and activate it:
uv sync --extra dev
source .venv/bin/activate
uv sync creates a Python virtual environment in .venv/ (pinned by
.python-version), installs Isaac Lab Arena and Isaac Lab editable from
submodules/IsaacLab, and pulls the matching Isaac Sim, PyTorch, and Newton
wheels at the versions pinned by the committed lockfile. The dev extra
installs the Streamlit and SimReady search dependencies used by the
agentic environment generation workflow.
Note
Native uv installs do not include the optional isaaclab_arena_curobo
package, so cuRobo-based reachability validation (the ik_reachable check)
is not available. Use the Docker workflow with ./docker/run_docker.sh -c
instead.
Accept the Isaac Sim EULA so the first launch is non-interactive:
export OMNI_KIT_ACCEPT_EULA=YES ACCEPT_EULA=Y
Launch a short zero-action rollout as a visual validation that things are running:
python isaaclab_arena/evaluation/policy_runner.py \
--policy_type zero_action --num_steps 20 cube_goal_pose
Optionally, watch the rollout in the GUI visualizer by adding --viz kit (and
a few more steps so there is time to see it):
python isaaclab_arena/evaluation/policy_runner.py \
--viz kit --policy_type zero_action --num_steps 200 cube_goal_pose
Optionally verify the installation by running the test phases:
pytest -sv -m "not with_cameras and not with_subprocess" isaaclab_arena/tests/
pytest -sv -m "with_cameras and not with_subprocess" isaaclab_arena/tests/
pytest -sv -m with_subprocess isaaclab_arena/tests/
With isaaclab_arena installed you’re ready to build your first environment;
see First Arena Environment.
Installation via Docker#
Isaac Lab Arena supports installation from source inside a Docker container. Future versions of Isaac Lab Arena, we will support a larger range of installation options.
Clone the repository and initialize submodules:
git clone --branch release/0.3.0 --recurse-submodules git@github.com:isaac-sim/IsaacLab-Arena.git
cd IsaacLab-Arena
Launch the docker container:
./docker/run_docker.sh
The container will build (if needed) and drop you into an interactive shell.
For cuRobo-based reachability validation, launch with the -c flag
instead (native uv installs do not support this check):
./docker/run_docker.sh -c
Note
The run docker script mounts the following directories from the host machine if they exist:
Datasets:
$HOME/datasets→/datasetsModels:
$HOME/models→/modelsEvaluation:
$HOME/eval→/eval
When mounted a user avoids re-downloading datasets and models between container restarts,
so our suggestion is to create these directories on the host machine before running the container.
Note that the path of the mounted directories are configurable — see docker/run_docker.sh
for the full list of arguments.
Optionally verify installation by running tests:
pytest -sv -m "with_cameras and not with_subprocess" isaaclab_arena/tests/
pytest -sv -m "not with_cameras and not with_subprocess" isaaclab_arena/tests/
pytest -sv -m with_subprocess isaaclab_arena/tests/
With isaaclab_arena installed and the docker running, you’re ready to build your
first IsaacLab-Arena Environment. See First Arena Environment to get started.