# Deploy Qualcomm IM SDK as a container

Source: [https://docs.qualcomm.com/doc/80-70018-50/topic/application-deployment-within-container-api-gstd.html](https://docs.qualcomm.com/doc/80-70018-50/topic/application-deployment-within-container-api-gstd.html)

Build Qualcomm IM SDK within the docker container and prepare the final device docker
        image, which can be deployed to the Qualcomm Linux enabled Edge device. This allows you to
        use the AI workflow microservices to build various types of AI pipelines using Qualcomm IM
        SDK.

Figure : Qualcomm IM SDK within a container - architecture
            
            ![](data:image/jpeg;base64,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)

The table lists the components that are required to build the Qualcomm IM SDK docker
            container from the source code:

Table : Components for Qualcomm IM SDK docker container

| Component | Description |
| :--- | :--- |
| Platform eSDK | <ul class="ul" id="application-deployment-within-container-api-gstd__ul_hnh_nyc_pdc"><br>                                    <li class="li">Provides the platform dependencies for Qualcomm IM SDK.</li><br><br>                                    <li class="li">Contains platform libraries and header files.</li><br><br>                                </ul> |
| Qualcomm IM SDK source code | Contains the source code of the plugins and recipe files, which<br>                                build and define the compile time dependencies. |
| solutions-microservices | Provides the AI pipelines that are required for<br>                                microservices. |
| sdk-tools | <ul class="ul" id="application-deployment-within-container-api-gstd__ul_h3b_5yc_pdc"><br>                                    <li class="li">Provides the docker files and a set of helper scripts to<br>                                        generate the Qualcomm IM SDK device docker container.</li><br><br>                                    <li class="li">Provides the <em class="ph i">run</em> commands for the reference docker,<br>                                        and the YAML compose files to run the docker<br>                                        containers.</li><br><br>                                    <li class="li">Maps all the required platform devices and libraries to<br>                                        provide hardware acceleration inside the docker<br>                                        container.</li><br><br>                                </ul> |

## Build Qualcomm IM SDK docker image

Source: [https://docs.qualcomm.com/doc/80-70018-50/topic/application-deployment-within-container-api-gstd.html](https://docs.qualcomm.com/doc/80-70018-50/topic/application-deployment-within-container-api-gstd.html)

### Procedure

1. Create a root workspace:
                
mkdir <your workspace>/iot-solutionsCopy to clipboard

This root workspace has the following:
    - Extracted platform eSDK
    - meta-qti-gst
    - gst-plugins-qti-oss
    - solutions-microservices
    - sdk-tools
    - le-services
2. Get the Platform eSDK. 
                
The Platform eSDK provides the following:

    - A collection of platform libraries for a specialized environment.
    - Cross-development toolchain and libraries that are tailored to a
                            specific Yocto-based Qualcomm Linux release.

You can either use a prebuilt Platform eSDK or generate your own. The table
                        guides you to the specific instructions to do both:

| Use Platform eSDK | Instructions |
    | :--- | :--- |
    | Prebuilt Platform eSDK | [Download and install<br>                                            Platform eSDK](https://docs.qualcomm.com/bundle/publicresource/topics/80-70018-51/install-sdk.html) |
    | Generate your own Platform eSDK | [Generate an<br>                                        eSDK](https://docs.qualcomm.com/bundle/publicresource/topics/80-70018-254/how_to.html#generate-an-esdk) |
3. Clone the following projects:
                
1. Qualcomm IM SDK
                            projects:

            # Clone QIM SDK plugins source
            
            cd <your workspace>/iot-solutions
            git clone https://git.codelinaro.org/clo/le/platform/vendor/qcom-opensource/gst-plugins-qti-oss.git -b imsdk.lnx.2.0.0.r2-rel
            cd gst-plugins-qti-oss
            git fetch origin imsdk.lnx.2.0.0.r2-rel
            git checkout FETCH_HEAD
            
            # Clone QIM SDK recipes
            cd <your workspace>/iot-solutions
            git clone https://git.codelinaro.org/clo/le/meta-qti-gst.git -b imsdk.lnx.2.0.0.r2-rel
            cd meta-qti-gst
            git fetch origin imsdk.lnx.2.0.0.r2-rel
            git checkout FETCH_HEADCopy to clipboard
    2. Solutions-Microservices
                            project:

            cd <your workspace>/iot-solutions
            git clone https://git.codelinaro.org/clo/le/solutions-microservices.git -b iot-solutions.lnx.1.0
            cd solutions-microservices
            git fetch origin iot-solutions.lnx.1.0
            git checkout FETCH_HEADCopy to clipboard
    3. SDK-tools
                            project:

            cd <your workspace>/iot-solutions
            git clone https://git.codelinaro.org/clo/le/sdk-tools.git -b imsdk-tools.lnx.1.0
            cd sdk-tools
            git fetch origin imsdk-tools.lnx.1.0
            git checkout FETCH_HEADCopy to clipboard
    4. Linux Embedded (LE) services
                            project:

            cd <your workspace>/iot-solutions
            git clone https://git.codelinaro.org/clo/le/platform/vendor/qcom-opensource/le-services.git --single-branch -b le-services.lnx.1.0.r1-rel
            cd le-services
            git fetch origin le-services.lnx.1.0.r1-rel
            git checkout FETCH_HEADCopy to clipboard
4. Configure the build:
                
Note: If you are building the Qualcomm IM SDK docker build
                        for the first time, [set up the docker on your
                        machine](https://git.codelinaro.org/clo/le/sdk-tools/-/blob/imsdk-tools.lnx.1.0/qimsdk/README.md#Prerequisites).

Update the JSON configuration file for the required target. Go to the
                            targets
                        directory.

        cd <your workspace>/iot-solutions/sdk-tools/qimsdk/targetsCopy to clipboard

The figure shows the fields in the config.json file:

![](data:image/png;base64,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)

The table provides the field description for the
                            config.json file:

| Field | Mandatory/Optional | Description |
    | :--- | :--- | :--- |
    | `"Additional_tag_container"` | Optional | Append this string to the docker image name. |
    | `"Additional_tag_image"` | Optional | The docker image tag. |
    | `"Docker_image_path"` | Mandatory | The directory to which the docker image and docker<br>                                            run script are exported. |
    | `"Target_device_ID"` | Optional | The device ID. If the device isn't attached to a<br>                                            computer, this field can be blank. |
    | `"IM_SDK_Source_Dir"` | Mandatory | The directory containing the Qualcomm IM SDK GSt<br>                                            plugin source code. |
    | `"IM_SDK_Meta_Dir"` | Mandatory | The directory containing the Qualcomm IM SDK GSt<br>                                            plugin BitBake recipe folder. |
    | `"Solution_Microservices_Dir"` | Mandatory | The solutions-microservices directory, which has all<br>                                            the Qualcomm IM SDK micro-service shell scripts. |
    | `"LE_Services_Source_Dir"` | Mandatory | The LE-services directory, which has all the LE<br>                                            source files. |
    | ` "Path_to_eSDK_dir"` | Mandatory | The directory to which the Platform eSDK is<br>                                            extracted. |
5. Build and export the docker image:
    1. Set the environment:
                        
cd <your workspace>/sdk-tools/qimsdkCopy to clipboard

            source scripts/docker_env_setup.shCopy to clipboard
    2. Build the docker image:
                        
qimsdk-docker-build-image targets/config.jsonCopy to clipboard
    3. Export the docker image and the docker run scripts to the
                                Docker\_image\_path directory.
                        
qimsdk-docker-device-save-image targets/config.jsonCopy to clipboard

## Load and run the docker

Source: [https://docs.qualcomm.com/doc/80-70018-50/topic/application-deployment-within-container-api-gstd.html](https://docs.qualcomm.com/doc/80-70018-50/topic/application-deployment-within-container-api-gstd.html)

### Procedure

1. Install the docker image on the device:
                
ssh root@<device-ip>Copy to clipboard

The password is `oelinux123`.
2. Copy the docker image from Linux host to the target device:
                
scp <Docker_image_path>/* root@<device-ip>:/opt/dockerCopy to clipboard

`<Docker_image_path>` is the directory where the docker
                        image TAR file and scripts are installed.
3. Verify whether the docker directory configuration is successful:
                
docker info | grep StorageCopy to clipboard
4. Load the docker image and run the docker in the device shell:
                
cd /opt/dockerCopy to clipboard

        docker load -i /opt/docker/<qimsdk-docker-image>Copy to clipboard

        mv docker-compose-qcs6490.yml docker-compose.ymlCopy to clipboard

        chmod 777 docker_run_qcs6490.shCopy to clipboard

`<qimsdk-docker-image>` is the name of the file that has
                        the Qualcomm IM SDK docker image. For example,
                            qimsdk.tar.
5. Create the docker directory in the device shell:
                
mkdir -p /opt/dockerCopy to clipboard

        chmod -R 777 /opt/dockerCopy to clipboard

## Run docker image for multimedia/AI use cases

Source: [https://docs.qualcomm.com/doc/80-70018-50/topic/application-deployment-within-container-api-gstd.html](https://docs.qualcomm.com/doc/80-70018-50/topic/application-deployment-within-container-api-gstd.html)

Note: The following procedure is applicable to QCS6490, QCS9075, and
            QCS8275. As an example, QCS6490 is used in the commands.

### Prerequisites

1. [Build Qualcomm IM SDK docker image](https://docs.qualcomm.com/doc/80-70018-50/topic/application-deployment-within-container-api-gstd.html#build-and-run-qualcomm-im-sdk-docker-image).
2. [Load and run the docker](https://docs.qualcomm.com/doc/80-70018-50/topic/application-deployment-within-container-api-gstd.html#load-and-run-docker).

.

### Procedure

A docker run command is available in the shell script.

Run the Qualcomm IM SDK docker image using the following commands:

- 1. In a device shell, run the docker
                            script:

            sh /opt/docker/docker_run_qcs6490.shCopy to clipboard
    2. List all the running containers:

            docker ps -aCopy to clipboard
    3. Enter the Qualcomm IM SDK container

            docker exec -it <qimsdk-docker-image-name> bashCopy to clipboard

### Use docker compose commands (optional)

You can use the docker compose commands to run several docker containers in different
                consoles.

Do the following to run the docker compose commands:

- 1. In a device shell, go to the docker
                                directory:

            cd /opt/dockerCopy to clipboard
    2. Run the docker-compose bash
                                    script:

            docker-compose run <qimsdk-docker-image-name> bashCopy to clipboard

| Field | Description |
        | :--- | :--- |
        | &lt;qimsdk-docker-image-name&gt; | The name of the Qualcomm IM SDK docker<br>                                                  image. |
        | qimsdk | The default docker image. |

        To check the action name, run the `docker
                                        images` command.

## Run container use cases for camera

Source: [https://docs.qualcomm.com/doc/80-70018-50/topic/application-deployment-within-container-api-gstd.html](https://docs.qualcomm.com/doc/80-70018-50/topic/application-deployment-within-container-api-gstd.html)

1. Enable the
                display:

        export XDG_RUNTIME_DIR=/dev/socket/weston && export WAYLAND_DISPLAY=wayland-1Copy to clipboard
2. As an example, run the use case for single 1080p YUV stream from live
                    source:

        gst-launch-1.0 -e qtiqmmfsrc name=camsrc video_1::type=preview ! video/x-raw,format=NV12,width=1920,height=1080,framerate=30/1,interlace-mode=progressive,colorimetry=bt601 ! waylandsink fullscreen=true sync=falseCopy to clipboard

    For
                    more use cases, see [Run multimedia use cases](https://docs.qualcomm.com/doc/80-70018-50/topic/multimedia-use-cases.html).

### Known issues

- Support for the following isn't enabled in the docker:
    - GStd.
    - NV12 UBWC compressed streams.
    - The sample applications dependent on NV12 UBWC.
- The [gst-ai-usb-camera-app](https://docs.qualcomm.com/doc/80-70018-50/topic/ai-usb-camera.html) application
                    isn't supported inside the docker.
- RTSP sink isn't supported on the [gst-ai-multi-input-output-object-detection](https://docs.qualcomm.com/doc/80-70018-50/topic/gst-ai-multi-input-output-object-detection.html) application.
- Minor frame drops have been observed in the [gst-ai-parallel-inference](https://docs.qualcomm.com/doc/80-70018-50/topic/gst-ai-parallel-inference.html)
                    application inside the docker.
- Encoding isn't supported on the [gst-ai-daisychain-detection-pose](https://docs.qualcomm.com/doc/80-70018-50/topic/daisy-chain-detection-and-pose-detection.html) application inside the docker.
- The [gst-ai-face-detection](https://docs.qualcomm.com/doc/80-70018-50/topic/gst-ai-face-detection.html) and
                        [gst-ai-face-recognition](https://docs.qualcomm.com/doc/80-70018-50/topic/gst-ai-face-recognition.html)
                    sample applications aren't supported inside the docker.

Last Published: Jan 30, 2026

[Previous Topic
Customize a Python sample application](https://docs.qualcomm.com/bundle/publicresource/80-70018-50/topics/customize-a-python-sample-application.md) [Next Topic
GStreamer command-line use cases](https://docs.qualcomm.com/bundle/publicresource/80-70018-50/topics/gstreamer-application-use-cases.md)