Linux / arm64
NVIDIA Linux4Tegra (L4T) package provides the bootloader, kernel, necessary firmwares, NVIDIA drivers for various accelerators present on Jetson modules, flashing utilities and a sample filesystem to be used on Jetson systems. The software packages contained in L4T provide the functionality necessary to run Linux on Jetson modules. For a detailed software overview please refer documentation provided here: (https://docs.nvidia.com/jetson/l4t/index.html)
l4t-base docker image enables applications to be run in a container using the Nvidia Container Runtime on Jetson. It has a subset of packages from the l4t rootfs included within (Multimedia, Gstreamer, Camera, Core, 3D Core, Vulkan, Weston). The platform specific libraries providing hardware dependencies and select device nodes for a particular device are mounted by the NVIDIA container runtime into the l4t-base container from the underlying host, thereby providing necessary dependencies for l4t applications to execute within the container. This approach enables the l4t-base container to be shared between various Jetson devices.
The image is tagged with the version corresponding to the release version of the associated l4t release. Based on this, the l4t-base:r34.1 container is intended to be run on devices executing the l4t r34.1 release.
Starting with the r32.4.3 release, the Dockerfile for the l4t-base docker image is also being provided. This can be accessed at this link. Users can use this to modify the contents to suit their needs.
Starting with the r34.1 release (JetPack 5.0 Developer Preview), the l4t-base will not bring CUDA, CuDNN and TensorRT from the host file system. The l4t-base is meant to be used as the base container for containerizing applications for Jetson. Users can apt install Jetson packages and other software of their choice to extend the l4t-base dockerfile (see above) while building application containers. All JetPack components are hosted in the Debian Package Management server here.
For CUDA and TensorRT applications, users can use the L4T CUDA and TensorRT runtime containers which have CUDA and CUDA/CuDNN/TensorRT respectively in the container itself. They can be used as base containers to containerize CUDA and TensorRT applications on Jetson.
Ensure these prerequisites are available on your system:
Before running the l4t-base container, use Docker pull to ensure an up-to-date image is installed. Once the pull is complete, you can run the container image.
Procedure
In the Pull column, click the icon to copy the Docker pull command for the l4t-base container.
Open a command prompt and paste the pull command. Docker will initiate a pull of the container from the NGC registry. Ensure the pull completes successfully before proceeding to the next step.
To run the container:
xhost +
sudo docker run -it --rm --net=host --runtime nvidia -e DISPLAY=$DISPLAY -v /tmp/.X11-unix/:/tmp/.X11-unix nvcr.io/nvidia/l4t-base:r35.1.0
Option explained:
-it means run in interactive mode
--rm will delete the container when finished
--runtime nvidia will use the NVIDIA container runtime while running the l4t-base container
-v is the mounting directory, and used to mount hostÂs X11 display in the container filesystem to render output videos
r35.1.0 is the tag for the image corresponding to the l4t release
By default a limited set of device nodes and associated functionality is exposed within the l4t-base containers using the mount plugin capability. This list is documented here.
User can expose additional devices using the --device command option provided by docker. Directories and files can be bind mounted using the -v option.
Note that usage of some devices might need associated libraries to be available inside the container.
The following L4T containers can be readily leveraged as base containers to create application containers: CUDA, TensorRT, Deepstream, TensorFlow, PyTorch, ML. The NVIDIA Container Runtime on Jetson documentation has a FAQ on container usage.
Refer to this git repo for sample dockerfile. The JetPack dockerfile in that repo uses L4T container as base and creates a development container by installing CUDA, cuDNN, TensorRT, VPI and OpenCV inside the container.
The l4t-base container includes various software packages with their respective licenses included within the container.
For more information about l4t refer Jetson Download Center
If you have questions, please refer to the Jetson Forums.