nvidia-docker for Jetson (Xavier)

Though Docker comes preinstalled on the later JetPacks, the experience is somewhat incomplete w.r.t nvidia-docker, which is available on the x86 platform.

There are indeed ways (https://github.com/Technica-Corporation/Tegra-Docker) to access GPU from within Docker containers, but this is not quite inline with the container portability idea.

With the growing Jetson family, are there any official plans for arm version/equivalent of nvidia-docker?

Hi cdfghglz, you are correct that upstream Docker is what is supported on Jetson / L4T.

Here is a script that enables GPU passthrough: https://gist.github.com/JasonAtNvidia/e03e6675849d1d4049b85ea41efb2171

Note that this script was for TX2, but preliminary usage on Xavier shows that it seems to work. Let us know if you encounter issues with it.

Thanks dusty_nv for your reply.

The script seems to work, but I encountered some weird apt behaviour when mounting /usr/lib/aarch64-linux-gnu as a volume. I therefore mounted the /usr/lib/aarch64-linux-gnu/tegra directory only (nvidia drivers if I am not mistaken) and then apt-installed whatever I needed inside the docker image without a problem.

Hi Dusty,

I’m having some trouble getting GPU passthough to work on Jetson AGX Xavier.

https://devtalk.nvidia.com/default/topic/1043599/jetson-agx-xavier/no-libgl-so/

https://devtalk.nvidia.com/default/topic/1043951/jetson-agx-xavier/docker-gpu-acceleration-on-jetson-agx-for-ubuntu-18-04-image/

I tried creating docker images for both Ubuntu-16.04 and 18.04, but the GPU is not accessible within a docker container. More details on the two threads listed above!

Thanks