{"id":26201854,"url":"https://github.com/j3soon/docker-isaac-sim","last_synced_at":"2025-12-26T07:16:22.940Z","repository":{"id":275647409,"uuid":"902575996","full_name":"j3soon/docker-isaac-sim","owner":"j3soon","description":"Unofficial minimal dockerfile for Isaac Sim","archived":false,"fork":false,"pushed_at":"2025-12-04T10:40:16.000Z","size":36,"stargazers_count":6,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-12-07T09:40:54.548Z","etag":null,"topics":["docker","isaac","isaac-lab","isaac-sim","nvidia-isaac","omniverse","ros2","ros2-humble"],"latest_commit_sha":null,"homepage":"https://tutorial.j3soon.com/robotics/docker-isaac-sim/","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/j3soon.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2024-12-12T20:55:23.000Z","updated_at":"2025-12-06T10:26:42.000Z","dependencies_parsed_at":"2025-03-03T16:32:17.828Z","dependency_job_id":"4e463b80-583c-4c9c-ac7b-7c3ff115006e","html_url":"https://github.com/j3soon/docker-isaac-sim","commit_stats":null,"previous_names":["j3soon/docker-isaac-sim"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/j3soon/docker-isaac-sim","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/j3soon%2Fdocker-isaac-sim","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/j3soon%2Fdocker-isaac-sim/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/j3soon%2Fdocker-isaac-sim/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/j3soon%2Fdocker-isaac-sim/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/j3soon","download_url":"https://codeload.github.com/j3soon/docker-isaac-sim/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/j3soon%2Fdocker-isaac-sim/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28048175,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-12-26T02:00:06.189Z","response_time":55,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["docker","isaac","isaac-lab","isaac-sim","nvidia-isaac","omniverse","ros2","ros2-humble"],"created_at":"2025-03-12T03:24:01.996Z","updated_at":"2025-12-26T07:16:22.934Z","avatar_url":"https://github.com/j3soon.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Docker Isaac Sim\n\nUnofficial minimal dockerfile for Isaac Sim.\n\n\u003e For running Isaac Sim/Lab with Singularity/Apptainer, please refer to [j3soon/singularity-isaac-sim](https://github.com/j3soon/singularity-isaac-sim) for more details.\n\nThis is often useful in scenarios when you are using a custom base image and want to install Isaac Sim in it. For an example, one may want to use a custom base image for ROS2 and install Isaac Sim in it.\n\n| Name | Docker Image | Docker Hub Link |\n|------|--------------|-----------------|\n| Pip | `j3soon/isaac-sim-pip` | [![Docker Image](https://img.shields.io/badge/dockerhub-image-important.svg?logo=docker)](https://hub.docker.com/r/j3soon/isaac-sim-pip/tags) |\n| Binary | `j3soon/isaac-sim-bin` | [![Docker Image](https://img.shields.io/badge/dockerhub-image-important.svg?logo=docker)](https://hub.docker.com/r/j3soon/isaac-sim-bin/tags) |\n\n## Prerequisites\n\n- [NVIDIA Driver](https://ubuntu.com/server/docs/nvidia-drivers-installation)\n- [Docker](https://docs.docker.com/engine/install/ubuntu/)\n- [NVIDIA Container Toolkit](https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html)\n\n## Isaac Sim\n\n### Official Isaac Sim Images\n\nBefore diving into the unofficial docker images, let's first see how to use the official images.\n\nFor using the official Isaac Sim docker images, please follow [the official guide](https://docs.isaacsim.omniverse.nvidia.com/latest/installation/install_container.html#container-deployment), the commands should be something like below.\n\nHeadless mode:\n\n```sh\ndocker pull nvcr.io/nvidia/isaac-sim:4.5.0\ndocker run --name isaac-sim --entrypoint bash -it --gpus all -e \"ACCEPT_EULA=Y\" --rm --network=host \\\n  -e \"PRIVACY_CONSENT=Y\" \\\n  -v ~/docker/isaac-sim/cache/kit:/isaac-sim/kit/cache:rw \\\n  -v ~/docker/isaac-sim/cache/ov:/root/.cache/ov:rw \\\n  -v ~/docker/isaac-sim/cache/pip:/root/.cache/pip:rw \\\n  -v ~/docker/isaac-sim/cache/glcache:/root/.cache/nvidia/GLCache:rw \\\n  -v ~/docker/isaac-sim/cache/computecache:/root/.nv/ComputeCache:rw \\\n  -v ~/docker/isaac-sim/logs:/root/.nvidia-omniverse/logs:rw \\\n  -v ~/docker/isaac-sim/data:/root/.local/share/ov/data:rw \\\n  -v ~/docker/isaac-sim/documents:/root/Documents:rw \\\n  nvcr.io/nvidia/isaac-sim:4.5.0\n# in the container\n./runheadless.sh\n```\n\n\u003e For using WebRTC streaming, wait until the streaming is ready, you should see something like this:\n\u003e \n\u003e ```\n\u003e Isaac Sim Full Streaming App is loaded.\n\u003e ```\n\u003e \n\u003e Download and use the [Isaac Sim WebRTC Streaming Client](https://docs.isaacsim.omniverse.nvidia.com/latest/installation/download.html#isaac-sim-latest-release) as mentioned in [the official guide](https://docs.isaacsim.omniverse.nvidia.com/latest/installation/manual_livestream_clients.html#isaac-sim-setup-livestream-webrtc).\n\u003e \n\u003e \u003e For WebRTC streaming in Isaac Sim 4.2 and earlier, run the following command:\n\u003e \u003e\n\u003e \u003e ```sh\n\u003e \u003e # in the container\n\u003e \u003e ./runheadless.webrtc.sh\n\u003e \u003e ```\n\u003e \u003e Wait until the streaming is ready, you should see something like this:\n\u003e \u003e ```\n\u003e \u003e Isaac Sim Headless WebRTC App is loaded.\n\u003e \u003e ```\n\u003e \u003e\n\u003e \u003e Visit \u003chttp://127.0.0.1:8211/streaming/webrtc-demo/?server=127.0.0.1\u003e.\n\u003e \u003e\n\u003e \u003e Note that the URL must contain the IP address of the host machine, not the host/domain name.\n\nGUI mode:\n\n```sh\ndocker pull nvcr.io/nvidia/isaac-sim:4.5.0\nxhost +local:docker\ndocker run --name isaac-sim --entrypoint bash -it --gpus all -e \"ACCEPT_EULA=Y\" --rm --network=host \\\n  -e \"PRIVACY_CONSENT=Y\" \\\n  -v ~/docker/isaac-sim/cache/kit:/isaac-sim/kit/cache:rw \\\n  -v ~/docker/isaac-sim/cache/ov:/root/.cache/ov:rw \\\n  -v ~/docker/isaac-sim/cache/pip:/root/.cache/pip:rw \\\n  -v ~/docker/isaac-sim/cache/glcache:/root/.cache/nvidia/GLCache:rw \\\n  -v ~/docker/isaac-sim/cache/computecache:/root/.nv/ComputeCache:rw \\\n  -v ~/docker/isaac-sim/logs:/root/.nvidia-omniverse/logs:rw \\\n  -v ~/docker/isaac-sim/data:/root/.local/share/ov/data:rw \\\n  -v ~/docker/isaac-sim/documents:/root/Documents:rw \\\n  -v $(pwd):/workspace \\\n  -e DISPLAY=$DISPLAY \\\n  -v /tmp/.X11-unix:/tmp/.X11-unix \\\n  -v $HOME/.Xauthority:/root/.Xauthority \\\n  nvcr.io/nvidia/isaac-sim:4.5.0\n# in the container\n./runapp.sh\n```\n\n\u003e In addition, the [official dockerfiles](https://github.com/isaac-sim/IsaacSim/blob/main/tools/docker/Dockerfile) are available since Isaac Sim 5.1.0.\n\nReferences:\n\n- [Container Installation - Isaac Sim Documentation](https://docs.isaacsim.omniverse.nvidia.com/latest/installation/install_container.html)\n- [Isaac Sim \\| NVIDIA NGC](https://catalog.ngc.nvidia.com/orgs/nvidia/containers/isaac-sim/tags)\n\n### Isaac Sim Image with Pip Install\n\n\u003e Note that pip install Isaac Sim is still [in experimental stage](https://docs.isaacsim.omniverse.nvidia.com/latest/installation/install_python.html). Personally, I have used this method in [j3soon/ros2-essentials](https://github.com/j3soon/ros2-essentials) and have not encountered any issues with it yet.\n\nBuild or pull image:\n\n```sh\n# build the preferred version\ndocker build -f Dockerfile_isaacsim_5_0_pip -t j3soon/isaac-sim-pip:5.0 .\ndocker build -f Dockerfile_isaacsim_4_5_pip -t j3soon/isaac-sim-pip:4.5 .\ndocker build -f Dockerfile_isaacsim_4_2_pip -t j3soon/isaac-sim-pip:4.2 .\ndocker build -f Dockerfile_isaacsim_4_1_pip -t j3soon/isaac-sim-pip:4.1 .\ndocker build -f Dockerfile_isaacsim_4_0_pip -t j3soon/isaac-sim-pip:4.0 .\n# or pull the preferred version\ndocker pull j3soon/isaac-sim-pip:5.0\ndocker pull j3soon/isaac-sim-pip:4.5\ndocker pull j3soon/isaac-sim-pip:4.2\ndocker pull j3soon/isaac-sim-pip:4.1\ndocker pull j3soon/isaac-sim-pip:4.0\n```\n\n```sh\nxhost +local:docker\nISAAC_SIM_VERSION=4.2\ndocker run --rm -it --runtime=nvidia --gpus all --network=host \\\n  -v ~/docker/isaac-sim-pip/cache/kit:/usr/local/lib/python3.10/site-packages/omni/cache:rw \\\n  -v ~/docker/isaac-sim-pip/cache/ov:/root/.cache/ov:rw \\\n  -v ~/docker/isaac-sim-pip/cache/pip:/root/.cache/pip:rw \\\n  -v ~/docker/isaac-sim-pip/cache/glcache:/root/.cache/nvidia/GLCache:rw \\\n  -v ~/docker/isaac-sim-pip/cache/computecache:/root/.nv/ComputeCache:rw \\\n  -v ~/docker/isaac-sim-pip/logs:/root/.nvidia-omniverse/logs:rw \\\n  -v ~/docker/isaac-sim-pip/data:/root/.local/share/ov/data:rw \\\n  -v ~/docker/isaac-sim-pip/documents:/root/Documents:rw \\\n  -v $(pwd):/workspace \\\n  -e DISPLAY=$DISPLAY \\\n  -v /tmp/.X11-unix:/tmp/.X11-unix \\\n  -v $HOME/.Xauthority:/root/.Xauthority \\\n  -v /dev/shm:/dev/shm \\\n  j3soon/isaac-sim-pip:${ISAAC_SIM_VERSION}\n# in the container\n# For Isaac Sim 4.0 to 4.2, run:\nisaacsim omni.isaac.sim\n# or WebRTC streaming:\nisaacsim omni.isaac.sim.headless.webrtc --no-window\n```\n\n\u003e For Isaac Sim 4.5, run the following instead:\n\u003e \n\u003e ```sh\n\u003e isaacsim isaacsim.exp.full\n\u003e # or WebRTC streaming:\n\u003e isaacsim isaacsim.exp.full.streaming --no-window\n\u003e ```\n\nFor WebRTC streaming usage, see [the official Docker images section](#official-docker-images) below.\n\n\u003e The slight difference in cache directories between the official Docker image and the pip-installed version is observed by comparing the logs of the Isaac Sim instance in both environments.\n\nTo test the ros2 bridge in Isaac Sim, click `Isaac Utils \u003e Common Omnigraphs \u003e ROS2 Clock` in the menu and click `OK`. Click the play button, and run the following in a new terminal:\n\n```sh\ndocker run --rm -it --network=host -v /dev/shm:/dev/shm osrf/ros:humble-desktop-full bash\n# in the container\nros2 topic list\nros2 topic echo /clock\n```\n\n\u003e Please note that the ROS2 bridge is not working in Isaac Sim 4.5.0 yet. We're currently working on this issue.\n\nReferences:\n\n- [Python Environment Installation \\| Isaac Sim](https://docs.isaacsim.omniverse.nvidia.com/latest/installation/install_python.html)\n- [`isaacsim` \\| PyPI](https://pypi.org/project/isaacsim/#history)\n\n### Isaac Sim Image with Binary Install\n\nStarting from Isaac Sim 4.5.0, the Isaac Sim binary installation is supported.\n\nBuild or pull image:\n\n```sh\n# build the preferred version\ndocker build -f Dockerfile_isaacsim_5_0_bin -t j3soon/isaac-sim-bin:5.0 .\ndocker build -f Dockerfile_isaacsim_5_0_bin_user -t j3soon/isaac-sim-bin:5.0-user .\ndocker build -f Dockerfile_isaacsim_4_5_bin -t j3soon/isaac-sim-bin:4.5 .\ndocker build -f Dockerfile_isaacsim_4_5_bin_user -t j3soon/isaac-sim-bin:4.5-user .\n# or pull the preferred version\ndocker pull j3soon/isaac-sim-bin:5.0\ndocker pull j3soon/isaac-sim-bin:5.0-user\ndocker pull j3soon/isaac-sim-bin:4.5\ndocker pull j3soon/isaac-sim-bin:4.5-user\n```\n\n```sh\nxhost +local:docker\nISAAC_SIM_VERSION=5.0\n# TODO: Set USER_MODE to 1 for using image with UID 1000 instead of root.\n# USER_MODE=1\ndocker run --rm -it --runtime=nvidia --gpus all --network=host \\\n  -v ~/docker/isaac-sim-bin/cache/kit:/root/isaac-sim/kit/cache:rw \\\n  -v ~/docker/isaac-sim-bin/cache/ov:/root/.cache/ov:rw \\\n  -v ~/docker/isaac-sim-bin/cache/pip:/root/.cache/pip:rw \\\n  -v ~/docker/isaac-sim-bin/cache/glcache:/root/.cache/nvidia/GLCache:rw \\\n  -v ~/docker/isaac-sim-bin/cache/computecache:/root/.nv/ComputeCache:rw \\\n  -v ~/docker/isaac-sim-bin/logs:/root/.nvidia-omniverse/logs:rw \\\n  -v ~/docker/isaac-sim-bin/data:/root/.local/share/ov/data:rw \\\n  -v ~/docker/isaac-sim-bin/documents:/root/Documents:rw \\\n  -v $(pwd):/workspace \\\n  -e DISPLAY=$DISPLAY \\\n  -v /tmp/.X11-unix:/tmp/.X11-unix \\\n  -v $HOME/.Xauthority:/root/.Xauthority \\\n  -v /dev/shm:/dev/shm \\\n  j3soon/isaac-sim-bin:${ISAAC_SIM_VERSION}${USER_MODE:+-user}\n# in the container\n~/isaacsim/isaac-sim.sh\n# or WebRTC streaming:\n~/isaacsim/isaac-sim.streaming.sh\n```\n\nFor WebRTC streaming usage, see [the official Docker images section](#official-docker-images) below.\n\nWith user mode on, you should be able to run all [Isaac ROS's Isaac Sim tutorials](https://nvidia-isaac-ros.github.io/getting_started/index.html#isaac-sim-tutorials) with ease, without having to manually install Isaac Sim on your host machine.\n\nReferences:\n\n- [Workstation Installation \\| Isaac Sim](https://docs.isaacsim.omniverse.nvidia.com/4.5.0/installation/install_workstation.html)\n\n## Isaac Lab\n\nFor using the official Isaac Lab docker images, please follow [the official guide](https://isaac-sim.github.io/IsaacLab/main/source/deployment/docker.html#running-pre-built-isaac-lab-container), the commands should be something like below.\n\nHeadless mode:\n\n```sh\nISAAC_LAB_VERSION=2.3.1\ndocker pull nvcr.io/nvidia/isaac-lab:${ISAAC_LAB_VERSION}\ndocker run --name isaac-lab --entrypoint bash -it --gpus all -e \"ACCEPT_EULA=Y\" --rm --network=host \\\n  -e \"PRIVACY_CONSENT=Y\" \\\n  -v ~/docker/isaac-sim/cache/kit:/isaac-sim/kit/cache:rw \\\n  -v ~/docker/isaac-sim/cache/ov:/root/.cache/ov:rw \\\n  -v ~/docker/isaac-sim/cache/pip:/root/.cache/pip:rw \\\n  -v ~/docker/isaac-sim/cache/glcache:/root/.cache/nvidia/GLCache:rw \\\n  -v ~/docker/isaac-sim/cache/computecache:/root/.nv/ComputeCache:rw \\\n  -v ~/docker/isaac-sim/logs:/root/.nvidia-omniverse/logs:rw \\\n  -v ~/docker/isaac-sim/data:/root/.local/share/ov/data:rw \\\n  -v ~/docker/isaac-sim/documents:/root/Documents:rw \\\n  -v $(pwd):/app \\\n  nvcr.io/nvidia/isaac-lab:${ISAAC_LAB_VERSION}\n```\n\nGUI mode:\n\n```sh\nISAAC_LAB_VERSION=2.3.1\ndocker pull nvcr.io/nvidia/isaac-lab:${ISAAC_LAB_VERSION}\nxhost +local:docker\ndocker run --name isaac-lab --entrypoint bash -it --gpus all -e \"ACCEPT_EULA=Y\" --rm --network=host \\\n  -e \"PRIVACY_CONSENT=Y\" \\\n  -e DISPLAY \\\n  -v /tmp/.X11-unix:/tmp/.X11-unix \\\n  -v $HOME/.Xauthority:/root/.Xauthority \\\n  -v ~/docker/isaac-sim/cache/kit:/isaac-sim/kit/cache:rw \\\n  -v ~/docker/isaac-sim/cache/ov:/root/.cache/ov:rw \\\n  -v ~/docker/isaac-sim/cache/pip:/root/.cache/pip:rw \\\n  -v ~/docker/isaac-sim/cache/glcache:/root/.cache/nvidia/GLCache:rw \\\n  -v ~/docker/isaac-sim/cache/computecache:/root/.nv/ComputeCache:rw \\\n  -v ~/docker/isaac-sim/logs:/root/.nvidia-omniverse/logs:rw \\\n  -v ~/docker/isaac-sim/data:/root/.local/share/ov/data:rw \\\n  -v ~/docker/isaac-sim/documents:/root/Documents:rw \\\n  -v $(pwd):/app \\\n  nvcr.io/nvidia/isaac-lab:${ISAAC_LAB_VERSION}\n```\n\n## Isaac ROS\n\nSee the [official guide](https://nvidia-isaac-ros.github.io/getting_started/dev_env_setup.html).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fj3soon%2Fdocker-isaac-sim","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fj3soon%2Fdocker-isaac-sim","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fj3soon%2Fdocker-isaac-sim/lists"}