Isaac Sim 4.2.0 container won't start on Nucleus server; GPU/driver works in all other tests

I have a container-based Omniverse Nucleus server set up and working on an Ubuntu 22.04 machine; RTX 4090.

I am trying to install the container-based Isaac Sim on that same server, but when I followed the instructions on Container installation of Isaac Sim, the ‘docker run’ command fails.
Installation reference: Container Installation — Omniverse IsaacSim
Command:

docker run --name isaac-sim --entrypoint bash -it --runtime=nvidia --gpus all -e "ACCEPT_EULA=Y" --rm --network=host \
    -e "PRIVACY_CONSENT=Y" \
[directory mapping stuff] \
    nvcr.io/nvidia/isaac-sim:4.2.0

Error:

docker: Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error running prestart hook #0: exit status 1, stdout: , stderr: Auto-detected mode as ‘legacy’
nvidia-container-cli: mount error: stat failed: /dev/nvidia-modeset: no such file or directory: unknown.

Troubleshooting:

  1. nvidia driver is working on the bare-metal machine (Ubuntu 22.04):
    running nvidia-smi works and shows all the information about the RTX 4090 GPU.

  2. nvidia driver is visible in basic Ubuntu container.
    Running
    sudo docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi
    shows the same GPU information.

  3. nvidia driver is visible in CUDA Docker container.
    Running
    sudo docker run --rm --runtime=nvidia -ti nvidia/cuda:12.8.0-cudnn-runtime-ubuntu22.04
    spins up a CUDA container, and running nvidia-smi on that container’s command line shows the same GPU

  4. Nucleus Navigator works
    I can run the Omniverse container collection with the installation run script
    docker compose --env-file /opt/ove/base_stack/nucleus-stack.env -f /opt/ove/base_stack/nucleus-stack-no-ssl.yml up -d
    and connect to the Omniverse Navigator from an outside workstation at [ip]:8080.

However, Isaac Sim’s container does not start up with the standard Docker run instruction.
I’ve tried both Isaac Sim 4.2.0 and 4.5.0.

Isaac Sim Version

[X ] 4.2.0
4.1.0
4.0.0
4.5.0
2023.1.1
2023.1.0-hotfix.1
Other (please specify):

Operating System

Ubuntu 22.04
Ubuntu 20.04
Windows 11
Windows 10
Other (please specify):

GPU Information

  • Model: RTX 4090
  • Driver Version: 570.86.15 , CUDA 12.8

Let’s focus on version 4.5.0. Have you carefully followed the “Install the NVIDIA Container Toolkit” step in Container Installation — Isaac Sim Documentation?

Have you carefully followed the “Install the NVIDIA Container Toolkit” step in Container Installation — Isaac Sim Documentation?

Thanks, and always a fair question! :)
In response, I did an apt remove nvidia-container-toolkit to get the current version out, then followed the steps in the Container Installation again related to the nvidia-container-toolkit.
I was able to successfully run the docker + nvidia test of
docker run --rm --runtime=nvidia --gpus all ubuntu nvidia-smi
and have it display the GPU information.

Unfortunately, running the docker run code for Isaac Sim 4.5.0 failed again with the same error:

docker: Error response from daemon: failed to create task for container: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: error during container init: error running prestart hook #0: exit status 1, stdout: , stderr: Auto-detected mode as 'legacy'
nvidia-container-cli: mount error: stat failed: /dev/nvidia-modeset: no such file or directory: unknown.

I noticed in the 4.5.0 docs that the recommended NVIDIA driver version is a bit back:

The recommended driver version for Isaac Sim is 535.129.03 for Linux.

I installed the default current version (Jan 2025), and based on the nvidia-smi output, it’s more recent than 535:

+-----------------------------------------------------------------------------------------+
| NVIDIA-SMI 570.86.15              Driver Version: 570.86.15      CUDA Version: 12.8     |
|-----------------------------------------+------------------------+----------------------+

Would it be worth backing up the driver version if 535.XX has been more thoroughly tested with Isaac Sim 4.5.0 than 570.XX? Or is there another route someone would recommend for trouble-shooting the Isaac Sim startup error?
Thanks!

Hi. Yes. 535.129.03 is the recommended driver version that the Isaac Sim 4.5.0 container is tested with.
An alternative is to try the 550.144.03 version which is the latest stable production driver.

The 570 drivers is not recommended because it is currently a beta driver.

Try re-installing the recommended driver using the .run installer with the default options.

TLDR: issue with Isaac Sim start-up was due more to the Secure Boot BIOS flag than the Nvidia driver version.

Thanks for the advice on the driver version: stable is better for me!

I started with a fresh Ubuntu installation and followed just the process in the Isaac Sim installation process (i.e. without the Nucleus server) and using Nvidia driver version 550.144.03.
https://docs.isaacsim.omniverse.nvidia.com/latest/installation/install_container.html

  • Changing the driver version to 550.144.03 didn’t immediately help: Isaac Sim container startup still failed.
  • The issue turned out to be Secure Boot not allowing the Nvidia drivers to work correctly.
    This was surprising because I had followed the process from the forum post below to get the Nvidia driver signed and so allowed under Secure Boot. I was fooled by the successful running of nvidia-smi and the Nucleus server container, thinking that indicated the Nvidia driver was successfully loaded on boot, but that was apparently naive… :)
    Secure Boot on Linux post: NVIDIA drivers not working while Secure Boot is enabled after updating to Ubuntu 24.04 - #2 by mohammad.vazirpanah1
  • With Secure Boot enabled in the BIOS, with driver 550.144.03, the docker run command to start the Isaac Sim container produced the same error as before: nvidia-container-cli: mount error: stat failed: /dev/nvidia-modeset: no such file or directory: unknown.
  • With Secure Boot disabled in the BIOS, the docker run command for Isaac Sim started up the image correctly, and I was able to ./runheadless and connect to the Isaac Sim image with the Isaac Sim WebRTC Streaming client. Through that I was able to try the first Isaac Sim Quickstart trials. The HUD in Isaac Sim confirmed the GPU was available and being used.

Thanks for your help with this troubleshooting!

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.