Skip to content

Commit fafa449

Browse files
committed
Add dockerfile for Isaac Sim 4.5.0 (no ROS2 support yet)
1 parent 5b2ddb9 commit fafa449

File tree

3 files changed

+71
-2
lines changed

3 files changed

+71
-2
lines changed
Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# Ref: https://docs.docker.com/build/ci/github-actions/
2+
name: Build Docker Image for Isaac Sim 4.5 (pip)
3+
4+
on:
5+
push:
6+
branches:
7+
- "master"
8+
paths:
9+
- .github/workflows/build-isaacsim-4-5-pip.yaml
10+
- Dockerfile_isaacsim_4_5_pip
11+
12+
jobs:
13+
docker:
14+
runs-on: ubuntu-latest
15+
steps:
16+
-
17+
name: Checkout
18+
uses: actions/checkout@v4
19+
-
20+
name: Login to Docker Hub
21+
uses: docker/login-action@v3
22+
with:
23+
username: ${{ secrets.DOCKERHUB_USERNAME }}
24+
password: ${{ secrets.DOCKERHUB_TOKEN }}
25+
-
26+
name: Build and push
27+
uses: docker/build-push-action@v6
28+
with:
29+
context: .
30+
file: ./Dockerfile_isaacsim_4_5_pip
31+
push: true
32+
tags: ${{ secrets.DOCKERHUB_USERNAME }}/isaac-sim-pip:4.5

Dockerfile_isaacsim_4_5_pip

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
FROM python:3.10
2+
3+
# Ref: https://github.com/j3soon/docker-vulkan-runtime
4+
ENV NVIDIA_VISIBLE_DEVICES=all
5+
ENV NVIDIA_DRIVER_CAPABILITIES=all
6+
RUN apt-get update && apt-get install -y \
7+
libgl1 libglu1-mesa vulkan-tools \
8+
&& rm -rf /var/lib/apt/lists/*
9+
RUN cat > /etc/vulkan/icd.d/nvidia_icd.json <<EOF
10+
{
11+
"file_format_version" : "1.0.0",
12+
"ICD": {
13+
"library_path": "libGLX_nvidia.so.0",
14+
"api_version" : "1.3.194"
15+
}
16+
}
17+
EOF
18+
19+
# Ref: https://docs.isaacsim.omniverse.nvidia.com/latest/installation/install_python.html
20+
RUN pip install isaacsim[all]==4.5.0 --extra-index-url https://pypi.nvidia.com \
21+
&& pip install isaacsim[extscache]==4.5.0 --extra-index-url https://pypi.nvidia.com
22+
23+
# Following Isaac Sim's warning message
24+
ENV OMNI_KIT_ACCEPT_EULA=YES
25+
ENV OMNI_KIT_ALLOW_ROOT=1
26+
ENV RMW_IMPLEMENTATION=rmw_fastrtps_cpp
27+
ENV RMW_IMPLEMENTATION=rmw_cyclonedds_cpp
28+
ENV LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib/python3.10/site-packages/isaacsim/exts/omni.isaac.ros2_bridge/humble/lib
29+
30+
# Reset entrypoint and command
31+
ENTRYPOINT []
32+
CMD ["/bin/bash"]

README.md

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44

55
Unofficial minimal dockerfile for Isaac Sim.
66

7-
This is often useful in scenarios when you are using a custom base image and want to install Isaac Sim in it.
7+
This is often useful in scenarios when you are using a custom base image and want to install Isaac Sim in it. In our case, we are using a custom base image for ROS2 and installing Isaac Sim in it.
88

99
Prerequisites:
1010
- [NVIDIA Driver](https://ubuntu.com/server/docs/nvidia-drivers-installation)
@@ -19,17 +19,20 @@ Build or pull image:
1919

2020
```sh
2121
# build the preferred version
22+
docker build -f Dockerfile_isaacsim_4_5_pip -t j3soon/isaac-sim-pip:4.5 .
2223
docker build -f Dockerfile_isaacsim_4_2_pip -t j3soon/isaac-sim-pip:4.2 .
2324
docker build -f Dockerfile_isaacsim_4_1_pip -t j3soon/isaac-sim-pip:4.1 .
2425
docker build -f Dockerfile_isaacsim_4_0_pip -t j3soon/isaac-sim-pip:4.0 .
2526
# or pull the preferred version
27+
docker pull j3soon/isaac-sim-pip:4.5
2628
docker pull j3soon/isaac-sim-pip:4.2
2729
docker pull j3soon/isaac-sim-pip:4.1
2830
docker pull j3soon/isaac-sim-pip:4.0
2931
```
3032

3133
```sh
3234
xhost +local:docker
35+
ISAAC_SIM_VERSION=4.2
3336
docker run --rm -it --runtime=nvidia --gpus all --network=host \
3437
-v ~/docker/isaac-sim-pip/cache/kit:/usr/local/lib/python3.10/site-packages/omni/cache:rw \
3538
-v ~/docker/isaac-sim-pip/cache/ov:/root/.cache/ov:rw \
@@ -44,7 +47,7 @@ docker run --rm -it --runtime=nvidia --gpus all --network=host \
4447
-v /tmp/.X11-unix:/tmp/.X11-unix \
4548
-v $HOME/.Xauthority:/root/.Xauthority \
4649
-v /dev/shm:/dev/shm \
47-
j3soon/isaac-sim-pip:4.2
50+
j3soon/isaac-sim-pip:${ISAAC_SIM_VERSION}
4851
# in the container
4952
# For Isaac Sim 4.0 to 4.2, run:
5053
isaacsim omni.isaac.sim
@@ -63,6 +66,8 @@ ros2 topic list
6366
ros2 topic echo /clock
6467
```
6568

69+
> Please note that the ROS2 bridge is not working in Isaac Sim 4.5.0 yet. We're currently working on this issue.
70+
6671
References:
6772
- [Python Environment Installation \| Isaac Sim](https://docs.isaacsim.omniverse.nvidia.com/latest/installation/install_python.html)
6873
- [`isaacsim` \| PyPI](https://pypi.org/project/isaacsim/#history)

0 commit comments

Comments
 (0)