Skip to main content

dev-container

Bootstraps and maintains the Docker environment used when contributing to Isaac Lab-Arena. Use when preparing a checkout for development, installing contributor hooks, rebuilding the Arena image with or without cache, inspecting the clone-specific container, or running development commands inside it. For installing or using Arena without contribution work, use setup-arena instead.

Datos de origen

Repositorio
isaac-sim/IsaacLab-Arena
Última actividad en el origen
21 de agosto de 2026 a las 09:17
Idioma detectado de SKILL.md
inglés
Estrellas
610
Forks
113

Opciones de instalación

De forma predeterminada está seleccionado el prompt que primero revisa el origen. Puedes cambiar a un comando directo o descargar una copia local.

Revisa los archivos de origen

Lee SKILL.md y los archivos complementarios que muestra SkillsMP antes de decidir si quieres instalarlo.

Mostrando SKILL.md

SKILL.md
Instrucciones de origen · Vista previa de solo lectura
name
dev-container
description
Bootstraps and maintains the Docker environment used when contributing to Isaac Lab-Arena. Use when preparing a checkout for development, installing contributor hooks, rebuilding the Arena image with or without cache, inspecting the clone-specific container, or running development commands inside it. For installing or using Arena without contribution work, use setup-arena instead.
allowed-tools
Read Grep Glob Skill Bash(git rev-parse *) Bash(git submodule *) Bash(head *) Bash(id -un) Bash(pre-commit install) Bash(test -x *) Bash(./docker/run_docker.sh *) Bash(docker exec *) Bash(docker images *) Bash(docker inspect *) Bash(docker ps *)
# Dev Container Keep this skill limited to contributor setup and Docker image maintenance. Use `setup-arena` for ordinary installation, runtime selection, container startup, data mounts, and readiness checks. If an explicit `/dev-container` request is only about running Arena, hand it off to `setup-arena` and do not install contributor tooling. ## Bootstrap a contributor checkout Run these commands from the repository root: ```bash git submodule update --init --recursive pre-commit install ``` Run `pre-commit install` on the host, never inside the container. Confirm that `.git/hooks/pre-commit` exists and is executable. Do not run the test suite or all pre-commit hooks unless the user asks for them. Use the Docker route in `setup-arena` to build or start the normal runtime and perform the import smoke check. If a host prerequisite is missing, report the failed check and the documented recovery. Do not install or change GPU drivers, Docker, the NVIDIA Container Toolkit, or other system packages without explicit approval. ## Discover this checkout's container Never hardcode the container name. Resolve the running container that mounts this checkout: ```bash ARENA_CONTAINER=$(docker ps --filter "volume=$(git rev-parse --show-toplevel)" --format '{{.Names}}' | head -1) ``` Keep discovery and subsequent commands in the same shell, or substitute the resolved literal name. ## Rebuild the image Use the repository launcher from the repository root: ```bash ./docker/run_docker.sh -r # rebuild with cache ./docker/run_docker.sh -R # rebuild without cache ``` Before rebuilding, check whether this checkout's container is running. A rebuilt image does not replace a running container, so explain that the container must be stopped and recreated before it can use the new image. Obtain approval before stopping it, and note that non-mounted container state will be lost. After recreation, rediscover the container and rerun the import smoke check from `setup-arena`. Use `-R` only when the user explicitly requests a no-cache rebuild or a cached layer is the suspected cause. Preserve the launcher's automatic per-checkout suffix unless the user requests `-s <suffix>`. ## Run a development command Run commands as the host user, not root: ```bash docker exec "$ARENA_CONTAINER" su $(id -un) -c \ "cd /workspaces/isaaclab_arena && <command>" ``` Use `/isaac-sim/python.sh` explicitly for non-interactive Python commands; do not rely on the interactive `python` alias. ## Hand off - Use `run-tests` for pytest regression testing. - Run pre-commit hooks on the host when requested. - Use `commit-and-pr` only when the user asks to commit, push, or open a pull request.
Ver en GitHub