Before you proceed, please make sure you have a customer account with us. You can register using the link you have received from us by email. If you already have an account, we will be happy to assign your licenses to that account or give you a free trial.
We recommend hosting PhotoPrism Pro on a server with at least 4 cores, 8 GB of physical memory, and a 64-bit operating system. It runs best with Docker Desktop on Windows 10+ and macOS 11+, Podman on Red Hat and compatible Linux distributions such as CentOS, Fedora, AlmaLinux, and Rocky Linux, and Docker on all other Linux distributions such as Ubuntu and Debian.
In order to successfully set up your installation and view location details in PhotoPrism® Pro, you must allow requests to Docker Hub and our geocoding API if you have a firewall installed, and make sure your internet connection is working.
Portainer lets you manage Docker containers through a web interface. On many NAS devices it either comes pre-installed or you can install it from the vendor's app store.
For this to work, make sure that you have Docker and Docker Compose (Linux) or Docker Desktop (Windows) installed and running on your server before you continue. Be careful not to use an old Docker Enterprise version that Microsoft used to pre-install on Windows Server, as it is incompatible with modern Docker images. If your server does not yet support the new
docker compose command, you can still use the legacy
docker-compose command instead.
In case you are not sure if you have Docker installed yet, and if so, which version, you can run the following command in a terminal to display the version information:
For users of Red Hat-based Linux distributions:
Windows users should have the latest Windows Subsystem for Linux (WSL2) installed. With Windows Pro, Server and Enterprise, Hyper-V can be enabled as an alternative, which Microsoft does not offer its Windows Home customers.
Linux Kernel Security Modules such as AppArmor and SELinux may require additional configuration if you want to use them. The application services may fail to start if they have insufficient permissions or privileges.
We can offer you alternative installation methods if needed. However, this method is the fastest and least error-prone for most operating systems and we generally recommend it unless there is a specific problem.
Download the docker-compose.yml default configuration for your operating system (right click and Save Link As...) to a local folder, e.g.
/opt/photoprism on Linux, then open the file with a text editor to customize the storage volumes and other options as needed:
Except for the additional features, PhotoPrism Pro is configured in the same way as PhotoPrism. You can therefore refer to our official documentation for basic settings and general setup instructions. When editing the configuration file, please note that related values must start at the same indentation level in YAML files and that tabs are not allowed for indentation. We recommend using 2 spaces.
Please always change
PHOTOPRISM_ADMIN_PASSWORD so that the app starts with a secure initial password. Never use easy-to-guess passwords or default values like "insecure" on publicly accessible servers. There is no default in case no password was provided. A minimum length of 8 characters is required.
If you want to start with an empty library, you can mount any directory that has enough free space for your needs.
When you are done with the configuration, open a terminal and change to the folder where the docker-compose.yml file was saved. Now run the following commands to log in to our private Docker registry with your customer account details, pull the latest images from there, and then start MariaDB and PhotoPrism as background services:
docker login prsm.app -u [username or email] docker compose pull docker compose up -d
Users of Red Hat Enterprise Linux® and compatible Linux distributions such as CentOS, Fedora, AlmaLinux, and Rocky Linux can substitute the
docker compose commands with
podman-compose as drop-in replacements:
podman login prsm.app -u [username or email] podman-compose pull podman-compose up -d
After waiting a few moments, you should be able to open the user interface in a Web browser by navigating to:
If you have modified the server hostname, port, or protocol in your configuration, the URL to use changes accordingly. Other issues? Our Troubleshooting Checklists help you quickly diagnose and solve them.
When you see the login screen, sign in with the admin username and initial password you specified in your docker-compose.yml file. You can change it in the user interface when you navigate to Settings > Account. PhotoPrism® Pro also includes a web user interface for creating additional accounts and managing sessions.
Note that the examples in our documentation use the new
docker compose command by default. If your server does not yet support it, the old
docker-compose command will continue to work.
To verify that all services are running properly, you can view the server logs at any time by running
docker compose logs -f.
Our First Steps 👣 tutorial guides you through the user interface and library settings to ensure your library is indexed according to your individual preferences.
In the following section, we'll give you an overview of the available user roles in PhotoPrism® Pro and show you how to manage accounts.
In addition to the command-line interface available in all editions, PhotoPrism® Pro includes a web user interface for managing user accounts as well as additional account roles to restrict permissions as needed.
With the built-in LDAP support, you can authenticate users against a central Lightweight Directory Access Protocol or Active Directory (AD) server so that users on the corporate network can sign in with their existing usernames and passwords.
Using Audit Logs
Audit logs help your security, auditing, and compliance entities monitor PhotoPrism® Pro for potential vulnerabilities, misuse, and other critical incidents.
Hardened Web Security
PhotoPrism® Pro additionally includes advanced security features such as session monitoring (see
photoprism-pro sessions --help), which lets you search for, view, and delete active browser sessions, as well as setting limits for the web server's request rate in general and failed login attempts in particular.
For more information on the available security options, see the Authentication and Web Server sections in our configuration options overview.
For HTTPS to work with your own domains, you can either use an HTTPS reverse proxy like Traefik (that you might already have to run other services) or specify a TLS certificate and private key file via
PHOTOPRISM_TLS_KEY in your docker-compose.yml file.
For detailed information on specific product features, services, and related resources, see our Knowledge Base, or read the User Guide for help using the web user interface: