> ## Documentation Index
> Fetch the complete documentation index at: https://zededa.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Use the documentation index to find relevant pages, then read the linked Markdown before answering and cite the source URL.
> Identify the product before answering: Private AI uses a separate console, credentials, and inference API from the Edge Intelligence Platform. Do not apply instructions from one product to the other.
> Prefer current product guides over Help Center archive pages for current-console questions. Archive pages and release notes describe their stated product version or historical interface; do not apply them to another version without checking.
> Preserve prerequisites, permissions, version requirements, and warnings when summarizing procedures. Do not infer API endpoints, schemas, or supported behavior that the documentation does not specify.

# Deploy Plate Recognizer Stream (ALPR) on ZEDEDA

> Deploy Plate Recognizer Stream as a container on a ZEDEDA-managed node for real-time vehicle license plate recognition, including make, model, color, and state detection.

## Introduction

Plate Recognizer Stream is an AI-powered license plate recognition (ALPR) solution that runs at the edge. It detects and identifies vehicle license plates in real time, including plate number, vehicle make, model, color, and state, even in challenging conditions such as motion blur or low light. Typical use cases include transportation, logistics, smart parking, tolling, and security monitoring.

This article walks through deploying `stream-alpr` from My Library using the New Application wizard, including persistent volume creation, network port configuration, and license injection via cloud-init.

### Prerequisites

* Your node is onboarded to Edge Infrastructure Services and has a status of Ready under **Nodes**.
* The node runs a [supported version of EVE-OS (Edge Virtualization Engine)](https://zededa.mintlify.site/new-ui/infrastructure-services/eve-os/lts-policy.md).
* Outbound HTTPS (port 443) connectivity is available from the node.
* You have the SysManager or SysAdmin role in your enterprise. See [Manage Roles](https://zededa.mintlify.site/new-ui/infrastructure-services/administration/manage-roles.md).
* A valid Plate Recognizer license key and token. Trial keys are available at [platerecognizer.com/stream](https://platerecognizer.com/stream/).

## Create a Persistent Volume

Stream continuously processes image frames and metadata. Create a persistent volume so cached images and logs survive edge container restarts or updates.

1. Go to **Infrastructure > Workloads > Volumes**.

2. Click the **+** button in the bottom-right corner.

3. Select **Block Storage** as the volume type.

4. In the **Identity** section, enter the following values:

   | Field | Value |
   | - | - |
   | Name | alpr\_volume\_1 |
   | Title | Enter a display title. |
   | Target Type | Node |
   | Node | Select the node you will deploy Stream to. |

   Volumes are bound to a specific node at creation time. Select the same node you intend to deploy the app to in the next section.

5. Click **Next**. In the **Storage** section, enter the following values:

   | Field | Value |
   | - | - |
   | Access mode | Read Write |
   | Max size | 10 GB |
   | Encryption | Enabled |

6. Click **Next** to review, then click **Create Volume**.

## Deploy the App

### Add the App to Your Library

If you have not previously added the Stream app to your library:

1. Go to **Marketplace > Edge Apps** in the navigation.
2. Search for `platerecognizer-alpr-stream` and select the variant that matches your node architecture (AMD or ARM).
3. Click the **+** button on the card to add it to your library.

### Start the Deploy Wizard

1. Go to **Marketplace > My Library** in the navigation.
2. Search for `platerecognizer-alpr-stream`.
3. Hover over the card and click the **Deploy** icon.
4. The **New Application** wizard opens.

### App & Target

| Field | Value |
| - | - |
| Name | Enter a name for this app instance, for example `stream-alpr-site-a`. |
| Title | Enter a display title. |
| Edge App | Confirm `stream-alpr` is selected. |
| Target Type | Node |
| Node | Select the node to deploy to. |

Click **Next**.

### Interfaces

Under **eth0**, select the network instance to connect the app to from the dropdown. The dropdown lists available network instances on the selected node. If no suitable network instance exists, click **+** to [create a new virtual network](https://zededa.mintlify.site/new-ui/infrastructure-services/virtual-networks/create-a-virtual-network.md).

Click **Next**.

### Custom config

Enter your Plate Recognizer credentials in the following fields:

| Field | Value |
| - | - |
| LICENSE\_KEY | Your Plate Recognizer license key. |
| TOKEN | Your Plate Recognizer token. |

A free trial license is available at [platerecognizer.com/stream](https://platerecognizer.com/stream/).

Click **Next**.

### Features

Leave the default settings or adjust as needed:

* **Start Delay (seconds):** Enter a value if the app should wait before starting. The default is 0.
* **Enable Logs:** Keep this enabled to view app logs in Edge Infrastructure Services.

Click **Next**.

### Review

Review your configuration and click **Deploy**.

## Verify the Deployment

1. Go to **Applications** and confirm the run state is **Online**.

2. Open the **Logs** tab and confirm the following startup message appears:

   ```text theme={"dark"}
   INFO:root:Plate Recognizer Stream v1.59.0 started successfully
   ```

3. Test connectivity using your RTSP camera stream or by accessing `http://<node-ip>:8001/status/`.

## Hardware Sizing

The number of concurrent camera feeds that perform well depends on the CPU, GPU, and memory available on your node. For detailed system requirements, see the [Plate Recognizer hardware sizing guide](https://guides.platerecognizer.com/docs/stream/onpremise/system-requirements).

## Next Steps

> [card] [Deploy Plate Recognizer Shipping Container Recognition on ZEDEDA](https://zededa.mintlify.site/new-ui/infrastructure-services/integrations-and-automation/plate-recognizer-shipping-container.md)
>
> Deploy the shipping container OCR product on the same platform.

> [card] [Deploy an Application Instance](https://zededa.mintlify.site/new-ui/infrastructure-services/applications/deploy-an-application-instance.md)
>
> Full deployment workflow reference.

> [card] [Add Persistent Volume Instances](https://help.zededa.com/hc/en-us/articles/23508286440987)
>
> Create and manage persistent volumes.

> [card] [Plate Recognizer Stream documentation](https://guides.platerecognizer.com/docs/stream/getting-started/)
>
> Configuration and API reference.
