Frequently Asked Questions¶
PhotoPrism does not work, what can I do?¶
If the application can not be opened in the browser or the container doesn't start at all, you might have found a bug, you might be using an outdated container image or your folder is not readable (check permissions).
You're welcome to send a full report to email@example.com so that we can assist you.
Do you support Podman?¶
In short, it works just fine both in rootless and under root. Mind the SELinux which is enabled on Red Hat compatible systems, you may hit permission error problems. More details on on how to run PhotoPrism with Podman on CentOS in the following blogpost, it includes all the details including root and rootless modes, user mapping and SELinux:
Do you provide LXC images?¶
How can I optimize caching for performance?¶
Some users might want to place the thumbnail cache on a separate, faster file system while keeping the actual photo files on large, slow bulk storage. This should result in faster access to the thumbnails.
To do this, we add a further volume (
-v) parameter to the docker script so we
use an external path (outside the container) for the cache files. You can get
the internal path with
photoprism config, or as a docker command in a
running system (for Linux/BSD systems):
sudo docker exec photoprism photoprism config | grep cache-path
This should return a line such as:
for the internal path. We now know to add a line like
-v <MYCACHE_FOLDER>:/home/photoprism/.cache/photoprism \
to the docker invocation, with your actual path to the cache folder replacing
As an example, let's assume a ZFS filesystem with two pools ("volumes" in classical terminology): A pool tank in a raidz2 (RAID6) configuration based on hard drives that holds the original pictures, and a pool dozer in a mirrored (RAID1) configuration based on SSD or NVMe drives to store the thumbnails. Our docker script could be:
docker run -d \ --name photoprism \ -p 2342:2342 \ -v /tank/photos/:/home/photoprism/Pictures/Originals \ -v /dozer/cache/:/home/photoprism/.cache/photoprism \ photoprism/photoprism:latest
In a case like this, you will probably also want to optimize the datasets ("file
dozer/cache further. For instance, the
original photo files will call for a larger recordsize than the smaller cache
Mapping database directory¶
Everytime a container with PhotoPrism is removed, the database is lost. To prevent unwanted reindex process, map the database directory to directory on the host similarly like folder with original photos:
docker run -d --name photoprism -p 2342:2342 ... \ -v /srv/photoprism/db:/home/photoprism/.local/share/photoprism/resources/database \ photoprism/photoprism:latest
Our database schema still changes a lot as we do performance optimizations and add features. Therefore we cannot provide a smooth upgrade path and you should be prepared to delete your current database and re-index. To spare you a disappointment, we kindly advise you not to index large photo collections at the moment.