Docker Containers ================== DeepStream 5.0 provides Docker containers for both dGPU and Jetson platforms. These containers provide a convenient, out-of-the-box way to deploy DeepStream applications by packaging all associated dependencies within the container. The associated Docker images are hosted on the NVIDIA container registry in the NGC web portal at https://ngc.nvidia.com. They use the ``nvidia-docker`` package, which enables access to the required GPU resources from containers.This section describes the features supported by the DeepStream Docker container for the dGPU and Jetson platforms. .. note:: The DeepStream 5.0 containers for dGPU and Jetson are distinct, so you must get the right image for your platform. A Docker Container for dGPU --------------------------------- The `Containers `_ page in the NGC web portal gives instructions for pulling and running the container, along with a description of its contents. The dGPU container is called ``deepstream`` and the Jetson container is called ``deepstream-l4t``. Unlike the container in DeepStream 3.0, the dGPU DeepStream 5.0 container supports DeepStream application development within the container. It contains the same build tools and development libraries as the DeepStream 5.0 SDK. In a typical scenario, you build, execute and debug a DeepStream application within the DeepStream container. Once your application is ready, you can use the DeepStream 5.0 container as a base image to create your own Docker container holding your application files (binaries, libraries, models, configuration file, etc.,). Here is an example snippet of `Dockerfile` for creating your own Docker container: :: # Replace with required container type e.g. base, devel etc in the following line FROM nvcr.io/nvidia/ deepstream:5.0.1-20.09- COPY myapp /root/apps/myapp # To get video driver libraries at runtime (libnvidia-encode.so/libnvcuvid.so) ENV NVIDIA_DRIVER_CAPABILITIES $NVIDIA_DRIVER_CAPABILITIES,video This `Dockerfile` copies your application (from directory ``mydsapp``) into the container (``pathname /root/apps``). Note that you must ensure the DeepStream 5.0 image location from NGC is accurate. Table below lists the docker containers for dGPU released with DeepStream 5.0: .. csv-table:: Docker Containers for dGPU :file: ../content/tables/docker tables/DS_docker_container_list.csv :widths: 20, 30 :header-rows: 1 See the `DeepStream 5.0 Release Notes` for information regarding ``nvcr.io`` authentication and more. .. note:: See the `dGPU container `_ on NGC for more details and instructions to run the dGPU containers. A Docker Container for Jetson --------------------------------- As of JetPack release 4.2.1, `NVIDIA Container Runtime `_ for Jetson has been added, enabling you to run GPU-enabled containers on Jetson devices. Using this capability, DeepStream 5.0 can be run inside containers on Jetson devices using Docker images on NGC. Pull the container and execute it according to the instructions on the `NGC Containers `_ page. The DeepStream container expects CUDA, TensorRT, and VisionWorks to be installed on the Jetson device, because it is mounted within the container from the host. Make sure that these utilities are installed using JetPack on your Jetson prior to launching the DeepStream container. Note that the Jetson Docker containers are for deployment only. They do not support DeepStream software development within a container. You can build applications natively on the Jetson target and create containers for them by adding binaries to your docker images. Alternatively, you can generate Jetson containers from your workstation using instructions in the `Building Jetson Containers on an x86 Workstation` section in the NVIDIA Container Runtime for Jetson documentation. The table below lists the docker containers for Jetson released with DeepStream 5.0: .. csv-table:: Docker Containers for Jetson :file: ../content/tables/docker tables/DS_docker_container_jetson_list.csv :widths: 25, 35 :header-rows: 1 See the `DeepStream 5.0 Release Notes` for information regarding ``nvcr.io`` authentication and more. .. note:: See the `Jetson container `_ on NGC for more details and instructions to run the Jetson containers.