Follow this guide to set up your system to run the ONVIF Device Service.
- Intel™ Core® processor
- Ubuntu 20.04.4 LTS or later
- ONVIF-compliant Camera
The instructions in this guide were developed and tested using Ubuntu 20.04 LTS and the Tapo C200 Pan/Tilt Wi-Fi Camera, referred to throughout this document as the Tapo C200 Camera. However, the software may work with other Linux distributions and ONVIF-compliant cameras. Refer to our list of tested cameras for more information
You must have administrator (sudo) privileges to execute the user guide commands.
The software has dependencies, including Git, Docker, Docker Compose, and assorted tools. Follow the instructions below to install any dependency that is not already installed.
Install Git from the official repository as documented on the Git SCM site.
Update installation repositories:
sudo apt update
Add the Git repository:
sudo add-apt-repository ppa:git-core/ppa -y
sudo apt install git
Install Docker from the official repository as documented on the Docker site.
To enable running Docker commands without the preface of sudo, add the user to the Docker group. Then run Docker with the
Create Docker group:
sudo groupadd docker
If the group already exists,
groupaddoutputs a message: groupadd: group
dockeralready exists. This is OK.
Add User to group:
sudo usermod -aG docker $USER
Restart your computer for the changes to take effect.
To verify the Docker installation, run
hello-world:A Hello from Docker! greeting indicates successful installation.
docker run hello-world
Unable to find image 'hello-world:latest' locally latest: Pulling from library/hello-world 2db29710123e: Pull complete Digest: sha256:10d7d58d5ebd2a652f4d93fdd86da8f265f5318c6a73cc5b6a9798ff6d2b2e67 Status: Downloaded newer image for hello-world:latest Hello from Docker! This message shows that your installation appears to be working correctly. ...
Install Docker Compose
Install Docker Compose from the official repository as documented on the Docker Compose site.
Install the build, media streaming, and parsing tools:
sudo apt install build-essential ffmpeg jq curl
The table below lists command line tools this guide uses to help with EdgeX configuration and device setup.
|curl||Allows the user to connect to services such as EdgeX.||Use curl to get transfer information either to or from this service. In the tutorial, use
|jq||Parses the JSON object returned from the
|base64||Converts data into the Base64 format.|
Table 1: Command Line Tools
Download EdgeX Compose
Clone the EdgeX compose repository:
git clone https://github.com/edgexfoundry/edgex-compose.git
Navigate to the
Checkout the Levski release:
git checkout levski
levskibranch is the latest stable branch at the time of this update.
Navigate back to your home directory:
While not recommended, you can follow the process for manually building the images.