Skip to main content

Manual Installation Steps

If for some reason, you prefer not to use Plate Recognizer Installer, you can go through the steps below to manually install Stream with Docker.

List of Docker Images#

If you want to use a specific version of the software, set a tag. For example, platerecognizer/alpr-stream:jetson-1.28.1-r32.6.1. To see the whole list, open our image on Docker Hub and then click "Tags".

  • Intel x86 (must include AVX instructions)
    • Global platerecognizer/alpr-stream
    • Thailand platerecognizer/alpr-stream:thailand
    • Germany platerecognizer/alpr-stream:germany
    • Korea platerecognizer/alpr-stream:korea
  • Raspberry Pi (LattePanda, Orange Pi)
    • Global platerecognizer/alpr-stream:raspberry
  • Nvidia Jetson (with GPU)
    • Global platerecognizer/alpr-stream:jetson
    • Thailand platerecognizer/alpr-stream:thailand-jetson
    • Germany platerecognizer/alpr-stream:germany-jetson
    • Korea platerecognizer/alpr-stream:korea-jetson

STEP 1#

Please have a look at Before Run for installation prerequisites then create a Stream folder. For example:

c:\users\kyt\documents\stream

STEP 2#

Install Docker and confirm that it's running.

: Docker Desktop on Windows

If using Docker Desktop on Windows with the legacy Hyper-V backend and not WSL2, make sure to check this box (next to C) for Resource File Sharing and the click “Apply & Restart”. Step 2

STEP 3#

caution

For the following commands:

  • Change XXXXX and YYYYY to the License Key that we gave you.
  • Change folder directory -v /path/to/my/folder:/user-data.
  • We included --restart="unless-stopped" so Stream will automatically restart (upon system reboot or restart of Docker), unless the Stream was stopped manually. This works great when combined with the -d option so that Stream runs in the background.

Starting Stream on Linux#

In Command Prompt, run the following command:

docker pull platerecognizer/alpr-stream

To start the program, use docker run. If you are using Linux (Intel x86):

docker run --restart="unless-stopped" -t --name stream \  -v /home/kyt/documents/stream:/user-data --user `id -u`:`id -g` \  -e LICENSE_KEY=XXXXX -e TOKEN=YYYYY \  platerecognizer/alpr-stream

Having problems? Make sure to read the docker run checklist.

Starting Stream on Windows#

Open up CMD Command Prompt Step 3

In Command Prompt, run the following command:

docker pull platerecognizer/alpr-stream

If you are using Linux on Windows (e.g. Ubuntu): then run in Command Line:

docker run --restart="unless-stopped" -t --name stream -v c:\users\kyt\documents\stream:/user-data -e LICENSE_KEY=XXXXX -e TOKEN=YYYYY platerecognizer/alpr-stream

Having problems? Make sure to read the docker run checklist.

Starting Stream on Nvidia Jetson#

note

Need some help? See our Jetson FAQ for technical questions and advanced configuration options.

In Command Prompt, run the following command.

docker pull platerecognizer/alpr-stream:jetson

If you are using a Jetson device, make sure to include --runtime nvidia --group-add video. The latest image is built for Jetpack 4.6 using it with another version may trigger errors. Otherwise, you can use older images.

docker run --restart="unless-stopped" --runtime nvidia -t --name stream \  -v /home/kyt/documents/stream:/user-data --privileged \  --group-add video --user `id -u`:`id -g` \  -e LICENSE_KEY=XXXXX -e TOKEN=YYYYY \  platerecognizer/alpr-stream:jetson

Having problems? Make sure to read the docker run checklist.

Starting Stream on Raspberry Pi#

In Command Prompt, run the following command.

docker pull platerecognizer/alpr-stream:raspberrydocker run --restart="unless-stopped" -t --name stream \  -v /home/kyt/documents/stream:/user-data --privileged \  --group-add video --user `id -u`:`id -g` \  -e LICENSE_KEY=XXXXX -e TOKEN=YYYYY \  platerecognizer/alpr-stream:raspberry

Having problems? Make sure to read the docker run checklist.

STEP 4: First Run#

  • The first time you start Stream (Step 3), a config.ini file is created in your Stream folder.
  • Now edit config.ini and change the url field. This can either be a video or an RTSP camera.
  • Run the container again. Here's the expected output.