Skip to main content


How do I change the Server Port?

  1. In a terminal, go to the folder path where docker-compose.yml is located.
  2. Run the command docker-compose stop
  3. Open your docker-compose.yml with any text editor and find the line - "8000:8000".
  4. Change the first number to the desirable port (example: "8088:8000") and run: docker-compose up
  5. Run the command docker-compose up
  6. Now your On-Premise ParkPow will be available on http://local-or-public-IP:8088/

What are the hardware recommendations to run ParkPow on Premise?

  1. 2-4GB RAM should be sufficient. ParkPow on Premise supports up to 12 concurrent requests. Additional requests will need to wait until the current requests are completed. If you expect a low number of concurrent users/requests, then you can be on the low side of the RAM recommendation.
  2. Storage is mainly a function of how many vehicle plate reads per month, the size of each image and how long you want to store the images. For example, if a parking lot has 500 vehicles coming in/out each day, at 1.3 MB per 1080p image, then that yields 20 GB of storage each month. If you plan to store the data for 2 years, then you will need roughly 0.5 TB of storage.

We have benchmarked ParkPow on an Intel Core I5-10500T CPU 2,30 GHz (passmark of 10216) on Windows. Memory usage is stable around 1GB and the machine processes 50 requests per second.

How do I update On-Premise ParkPow?

Upgrading to the latest version

How can I configure On-Premise to automatically start?

  1. In a terminal, go to the folder where docker-compose.yml is located.
  2. Run the command docker-compose stop
  3. Edit docker-compose.yml with any text editor and uncomment the lines with the restart policy parameter:
image: platerecognizer/parkpow-postgres
restart: unless-stopped

image: platerecognizer/parkpow-app
restart: unless-stopped

  1. Run the command docker-compose up

How do I change SMTP email configuration?

  1. In a terminal, go to the folder where docker-compose.yml is located.
  2. Run the command docker-compose stop
  3. Open your docker-compose.yml with any text editor and change appropriate parameters:
        [email protected]
  1. Run the command docker-compose up

The recommended operating system for installing ParkPow is Linux. Running ParkPow in Docker over Linux offers better performance compared to running it inside a Virtual Machine, Docker Desktop (Windows) or utilizing WSL (Windows Subsystem for Linux).

Please ensure that you are using a system with an x86_64 architecture, as the Park Pow images provided are primarily designed for this architecture. If you require support for a different architecture, please let us know.

It is worth noting that Docker has the capability to emulate different architectures. However, if the host architecture is not amd64, it may result in slower performance.

Some pages are becoming slow with large data. How can I improve the performance?

Parkpow is optimized to handle large amount of data. Most of the time, the bottleneck is the database component of the application. The following checklist can be helpful optimizing the data for a large dataset.

  1. The PostgreSQL can be tuned for the particular hardware and environment. Parkpow provides a way to do this using a custom page under settings, http://local-or-public-IP:8000/optimize-db/ page. The config file can also be edited manually from the container,
# this will open a shell to the container environment
docker-compose exec db bash

# the following can be executed inside the container
cd /var/lib/postgresql/data/

# take a backup of before the changes
cp postgresql.conf postgresql.conf.bkp

# you can edit the files using micro editor -
apk add micro
micro /var/lib/postgresql/data/postgresql.conf

# after editing you can save and exit the editor using -> F10 and y
# You can use Ctrl + F to search the word and esc to edit

# now to exit the shell, enter

You have to restart the containers for the changes to take effect. Please note that this will result in some downtime.

Go to the folder path where docker-compose.yml is located and run:

docker-compose restart
  1. Older data could be occupying most of the DB storage and affecting its performance. If they are no longer needed, they can be marked for deletion at regular intervals using Scheduled Tasks page at http://local-or-public-IP:8000/scheduled-tasks/

How can I enable HTTPS on Parkpow on-premise?

To enable HTTPS on Parkpow, you need to follow a few steps. Here is a general guide on how to do it.

Floating button icon
CTRL + .