Use Pre-Built Docker Images#
This guide explains how to deploy ViPPET using pre-built Docker images, without building the application components from source. It is the fastest way to get a working local environment for evaluation, demos, and API exploration.
Prerequisites#
Before starting, ensure the following:
System requirements: The system meets the minimum requirements.
Docker platform: Docker is installed. For details, see the Docker installation guide.
Dependencies installed:
Make: Standard build tool, typically provided by the
build-essential(or equivalent) package on Linux.curl: Command-line tool for transferring data with URLs, typically provided by the
curlpackage on Linux.
For GPU and/or NPU usage, appropriate drivers must be installed. The recommended method is to use the DLS installation
script, which detects available devices and installs the required drivers. Follow the Prerequisites section in
Install Guide Ubuntu - Prerequisites
This guide assumes basic familiarity with terminal usage.
Before starting the setup, review the Pre-Installation Steps for optional configuration such as the Hugging Face access token used to download models from the Hugging Face Hub.
Setup#
Follow the steps below to quickly set up the environment and start the Visual Pipeline and Platform Evaluation Tool. For alternative ways to set up the sample application, refer to How to Build from Source.
Set up the working directory:
mkdir -p visual-pipeline-and-platform-evaluation-tool/onvif_discovery mkdir -p visual-pipeline-and-platform-evaluation-tool/shared/models mkdir -p visual-pipeline-and-platform-evaluation-tool/shared/videos mkdir -p visual-pipeline-and-platform-evaluation-tool/shared/onvif cd visual-pipeline-and-platform-evaluation-tool
Download all required files:
BRANCH=release-2026.1.0 BASE_URL="https://github.com/open-edge-platform/edge-ai-libraries/raw/refs/heads/${BRANCH}/tools/visual-pipeline-and-platform-evaluation-tool" # Top-level files used by docker compose and the Makefile curl -LO "${BASE_URL}/setup_env.sh" curl -LO "${BASE_URL}/compose.yml" curl -LO "${BASE_URL}/compose.cpu.yml" curl -LO "${BASE_URL}/compose.gpu.yml" curl -LO "${BASE_URL}/compose.npu.yml" curl -LO "${BASE_URL}/Makefile" curl -LO "${BASE_URL}/vippet-telegraf.conf" # Sources for the onvif-discovery image (not published, must be built locally) curl -Lo onvif_discovery/Dockerfile "${BASE_URL}/onvif_discovery/Dockerfile" curl -Lo onvif_discovery/onvif_discovery_agent.py "${BASE_URL}/onvif_discovery/onvif_discovery_agent.py" # Default lists of recordings and supported AI models (bind-mounted into the app) curl -Lo shared/videos/default_recordings.yaml "${BASE_URL}/shared/videos/default_recordings.yaml" curl -Lo shared/models/supported_models.yaml "${BASE_URL}/shared/models/supported_models.yaml" chmod +x setup_env.sh
Build the local image and start the application:
make build-onvif-discovery run
These targets automatically:
run
setup_env.shto detect available hardware (CPU/GPU/NPU) and write.env,create the required directories under
shared/,build the
vippet-onvif-discoveryimage locally (it is not published),pull the pre-built images (
vippet-app,vippet-ui,model-download,metrics-manager,mediamtx) and start all services.
Verify that the application is running:
docker compose ps
Access the application:
Open a browser and navigate to
http://localhost(orhttp://<HOST-IP>) to access the Visual Pipeline and Platform Evaluation Tool UI.Access the application API documentation:
Open a browser and navigate to
http://localhost/api/v1/docs(orhttp://<HOST-IP>/api/v1/docs) to access the Swagger UI.
Note: On the first start the
model-downloadservice may take several minutes to become healthy because it provisions its plugin virtual environments. The other services wait for it automatically.