Docker issue on permission?

Hi There,

Sorry to post about this small issue, but I’m running in circle trying to find the reason I cannot start any docker image who try to use my Jetson hardware. I can start very simple image, who do not rely on any hardware. Trying to fix permission, remove some tmp, … the only change was installing Miniconda for testing ComfyUi on my Jetson. But Conda is not activate (or activate, that doesn’t change anything).

I copy you the jetson-container init error :

~$ jetson-containers run $(autotag l4t-ml:r36.2.0)
Namespace(packages=['l4t-ml:r36.2.0'], prefer=['local', 'registry', 'build'], disable=[''], user='dustynv', output='/tmp/autotag', quiet=False, verbose=False)
-- L4T_VERSION=36.3.0  JETPACK_VERSION=6.0  CUDA_VERSION=12.4
-- Finding compatible container image for ['l4t-ml:r36.2.0']

Found compatible container dustynv/l4t-ml:r36.2.0 (2024-03-07, 8.9GB) - would you like to pull it? [Y/n] Y
Traceback (most recent call last):
  File "<frozen runpy>", line 198, in _run_module_as_main
  File "<frozen runpy>", line 88, in _run_code
  File "/mnt/sam/dock-test/jetson-containers/jetson_containers/tag.py", line 65, in <module>
    with open(args.output, 'w') as file:
         ^^^^^^^^^^^^^^^^^^^^^^
PermissionError: [Errno 13] Permission denied: '/tmp/autotag'
-- Error:  return code 1
V4L2_DEVICES:  --device /dev/video0  --device /dev/video1  --device /dev/video2  --device /dev/video3  --device /dev/video4  --device /dev/video5 
+ docker run --runtime nvidia -it --rm --network host --shm-size=8g --volume /tmp/argus_socket:/tmp/argus_socket --volume /etc/enctune.conf:/etc/enctune.conf --volume /etc/nv_tegra_release:/etc/nv_tegra_release --volume /tmp/nv_jetson_model:/tmp/nv_jetson_model --volume /var/run/dbus:/var/run/dbus --volume /var/run/avahi-daemon/socket:/var/run/avahi-daemon/socket --volume /var/run/docker.sock:/var/run/docker.sock --volume /mnt/sam/dock-test/jetson-containers/data:/data -v /etc/localtime:/etc/localtime:ro -v /etc/timezone:/etc/timezone:ro --device /dev/snd -e PULSE_SERVER=unix:/run/user/1000/pulse/native -v /run/user/1000/pulse:/run/user/1000/pulse --device /dev/bus/usb --device /dev/video0 --device /dev/video1 --device /dev/video2 --device /dev/video3 --device /dev/video4 --device /dev/video5 --device /dev/i2c-0 --device /dev/i2c-1 --device /dev/i2c-2 --device /dev/i2c-3 --device /dev/i2c-4 --device /dev/i2c-5 --device /dev/i2c-6 --device /dev/i2c-7 --device /dev/i2c-8 --device /dev/i2c-9 --name jetson_container_20241110_094419
"docker run" requires at least 1 argument.
See 'docker run --help'.

Usage:  docker run [OPTIONS] IMAGE [COMMAND] [ARG...]

Create and run a new container from an image

Any idea or suggestion would be welcome.
Thank you in advance for your time and knowledge.

Hi,

Could you try to run the command with root permission?

$ sudo jetson-containers run $(autotag l4t-ml:r36.2.0)

Thanks.

Hi, and thank you for supporting me.

This is the result :

~$ sudo jetson-containers run $(autotag l4t-ml:r36.2.0)
Namespace(packages=['l4t-ml:r36.2.0'], prefer=['local', 'registry', 'build'], disable=[''], user='dustynv', output='/tmp/autotag', quiet=False, verbose=False)
-- L4T_VERSION=36.3.0  JETPACK_VERSION=6.0  CUDA_VERSION=12.4
-- Finding compatible container image for ['l4t-ml:r36.2.0']
dustynv/l4t-ml:r36.2.0
[sudo] password for ***: 
V4L2_DEVICES:  --device /dev/video0  --device /dev/video1  --device /dev/video2  --device /dev/video3  --device /dev/video4  --device /dev/video5 
/mnt/sam/dock-test/jetson-containers/run.sh: line 307: /tmp/nv_jetson_model: Permission denied
+ docker run --runtime nvidia -it --rm --network host --shm-size=8g --volume /tmp/argus_socket:/tmp/argus_socket --volume /etc/enctune.conf:/etc/enctune.conf --volume /etc/nv_tegra_release:/etc/nv_tegra_release --volume /tmp/nv_jetson_model:/tmp/nv_jetson_model --volume /var/run/dbus:/var/run/dbus --volume /var/run/avahi-daemon/socket:/var/run/avahi-daemon/socket --volume /var/run/docker.sock:/var/run/docker.sock --volume /mnt/sam/dock-test/jetson-containers/data:/data -v /etc/localtime:/etc/localtime:ro -v /etc/timezone:/etc/timezone:ro --device /dev/snd --device /dev/bus/usb --device /dev/video0 --device /dev/video1 --device /dev/video2 --device /dev/video3 --device /dev/video4 --device /dev/video5 --device /dev/i2c-0 --device /dev/i2c-1 --device /dev/i2c-2 --device /dev/i2c-3 --device /dev/i2c-4 --device /dev/i2c-5 --device /dev/i2c-6 --device /dev/i2c-7 --device /dev/i2c-8 --device /dev/i2c-9 --name jetson_container_20241111_082054 dustynv/l4t-ml:r36.2.0
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 hook #0: error running hook: exit status 1, stdout: , stderr: time="2024-11-11T08:20:54+01:00" level=error msg="failed to create link [libcuda.so.1 /usr/lib/aarch64-linux-gnu/nvidia/libcuda.so]: failed to check if link exists: unexpected link target: libcuda.so.1.1": unknown.

But I can start a simple dock without relevant problem :

~$ sudo docker run -it -e DISPLAY=$DISPLAY -v /tmp/.X11-unix/:/tmp/.X11-unix -e XAUTHORITY=/tmp/.docker.sauth --rm ubuntu
root@6d95821462b6:/# 

And back to my issue if I try to escape Jetson-container to start an image who involve some ressource. I presume this is related to some minor update than have been done on this Orin.

~$ sudo docker run -it --rm --net=host --runtime nvidia -e DISPLAY=$DISPLAY -v /tmp/.X11-unix/:/tmp/.X11-unix nvcr.io/nvidia/l4t-base:r36.2.0
Unable to find image 'nvcr.io/nvidia/l4t-base:r36.2.0' locally
r36.2.0: Pulling from nvidia/l4t-base
895d322e8e59: Pull complete 
d6b7b064c0ba: Pull complete 
4be337001fb6: Pull complete 
3d091a54223a: Pull complete 
f4ca6da77970: Pull complete 
1d5805be1e54: Pull complete 
4330ebf922f2: Pull complete 
d44b5771c074: Pull complete 
eebf68307ab5: Pull complete 
580c69886425: Pull complete 
Digest: sha256:4646e1dd2f26e8de5f2f8776bb02a403bef0148fd7e4d860f836bb858fc5b1cd
Status: Downloaded newer image for nvcr.io/nvidia/l4t-base:r36.2.0
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 hook #1: error running hook: exit status 1, stdout: , stderr: time="2024-11-11T08:31:08+01:00" level=info msg="Symlinking /mnt/sam/docker-root/overlay2/3a2537ad050af88489fa72c99a2ba0cbe16d15f259b68806256ce75f304f8f24/merged/usr/lib/aarch64-linux-gnu/nvidia/libgstnvcustomhelper.so to libgstnvcustomhelper.so.1.0.0"
time="2024-11-11T08:31:08+01:00" level=info msg="Symlinking /mnt/sam/docker-root/overlay2/3a2537ad050af88489fa72c99a2ba0cbe16d15f259b68806256ce75f304f8f24/merged/usr/lib/aarch64-linux-gnu/nvidia/libgstnvdsseimeta.so to libgstnvdsseimeta.so.1.0.0"
time="2024-11-11T08:31:08+01:00" level=error msg="failed to create link [/usr/lib/aarch64-linux-gnu/nvidia/nvidia_icd.json /etc/vulkan/icd.d/nvidia_icd.json]: failed to check if link exists: unexpected link target: /mnt/sam/docker-root/overlay2/3a2537ad050af88489fa72c99a2ba0cbe16d15f259b68806256ce75f304f8f24/merged/etc/vulkan/icd.d/nvidia_icd.json": unknown

Hi,

How do you setup the docker in your environment?
Could you try the command in the below link?

Then install nvidia container with the below command:

$ curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
  && curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
    sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
    sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list
$ sudo apt-get update
$ sudo apt-get install -y nvidia-container-toolkit

Thanks.

Hi AastaLLL,
Sorry was on the move and didnt’ come back to you before.
The solution you suggest didn’t solved anything. At the end I just reinstalled the Jetson Orin with the SDK and stop trying to find the why.
Thank you for your time and supporting me on this issue.

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