Installing docker container runtime for jetson nano

Hello,

I am trying to run my docker container where I specified the runtime as nvidia

but I got the error as docker: Error response from daemon: Unknown runtime specified nvidia.

Then, I get to know the runtime docker container for jetson nano is not installed,

When I run this command sudo docker info | grep nvidia, I didnt get anything

How to install the runtime docker container for jetson nano specifically l4t

thanks

Hi @vishakraj, are you using the Jetson Nano Developer Kit with the JetPack SD card image? If so, it should have already come installed. On the other hand, if you are using a production Nano module, SDK Manager will install it after flashing. You should also have the other JetPack components CUDA/cuDNN/TensorRT/ect installed for some containers to function correctly (these come on the SD card, or are installed by SDK Manager after flashing)

If you have the NVIDIA L4T apt repo (normally this is already setup for you in /etc/apt/sources.list.d/nvidia-l4t-apt-source.list) you can try installing these packages via apt:

$ apt-cache search nvidia-container
libnvidia-container1 - NVIDIA container runtime library
nvidia-container-csv-cuda - Jetpack CUDA CSV file
libnvidia-container-tools - NVIDIA container runtime library (command-line tools)
libnvidia-container0 - NVIDIA container runtime library
nvidia-container-csv-cudnn - Jetpack CUDNN CSV file
nvidia-container-csv-visionworks - Jetpack VisionWorks CSV file
nvidia-container-runtime - NVIDIA container runtime
nvidia-container-csv-tensorrt - Jetpack TensorRT CSV file
nvidia-container-toolkit - NVIDIA container runtime hook

If you still can’t get it to work, it may be easier just to re-flash the SD card or device.

hi @dusty_nv, Thanks for writing,

while installing the above mentioned packages, I got disk full error,

the whole thing on eMMC, but I have 64 GB sd card,

so, If I delete my files in eMMC, then I got room for the packages,

but, is it possible to run my docker container on sd card, if so how should we achieve,

thanks

You can set the docker data-root in the /etc/docker/daemon.json to a folder on your SD card. This is what mine looks like, where I have my docker containers stored on an NVME drive (this is on Xavier)

{
    "runtimes": {
        "nvidia": {
            "path": "nvidia-container-runtime",
            "runtimeArgs": []
        }
    },

    "default-runtime": "nvidia",
    "data-root": "/media/nvidia/NVME/docker/data/JetPack_4.5/data"
}

Note that it’s important that your SD card needs to be automatically mounted at boot, so it should have an entry in /etc/fstab. This is so that the Docker daemon is able to find it (which also starts after boot)

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