Graph Composer and GXF Containers

Docker containers for runtime and development are now available for dGPU - x86_64 platform. These containers provide a convenient, out-of-the-box way to develop/deploy GXF 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 GXF Docker containers.

Prerequisites

  1. Install docker-ce by following the official instructions.

    Once you have installed docker-ce, follow the post-installation steps to ensure that the docker can be run without sudo.

  2. Install nvidia-container-toolkit by following the install-guide.

  3. Get an NGC account and API key:

    1. Go to NGC and search the GXF in the Container tab. This message is displayed: “Sign in to access the PULL feature of this repository”.

    2. Enter your Email address and click Next, or click Create an Account.

    3. Choose your organization when prompted for Organization/Team.

    4. Click Sign In.

  4. Log in to the NGC docker registry (nvcr.io) using the command docker login nvcr.io and enter the following credentials:

    a. Username: "$oauthtoken"
    b. Password: "YOUR_NGC_API_KEY"
    

    where YOUR_NGC_API_KEY corresponds to the key you generated from step 3.

Sample commands to run a docker container:

# Pull the required docker.  Refer the table - "Docker Containers details" to get docker container name.
$ docker pull <docker container name>
# Step to run the docker
$ export DISPLAY=:0
$ xhost +
$ docker run -it --rm --net=host --gpus all -e DISPLAY=$DISPLAY --device /dev/snd -v /tmp/.X11-unix/:/tmp/.X11-unix <required docker container name>

Table below lists the docker containers for GXF runtime and development:

Docker Containers details

Container

Container pull commands

Multiarch docker for x86 and Jetson that provides all the required external dependencies. graph_composer-runtime-4.0.0_*.deb has to be installed based on the platform

docker pull nvcr.io/nvidia/deepstream:7.0-samples-multiarch

Triton devel docker that contains Graph composer and DeepStream SDK along with a development environment for building GXF applications

docker pull nvcr.io/nvidia/deepstream:7.0-gc-triton-devel