Wenn man auf die TensorFlow-Gimmicks in Photoprism verzichten kann, kann man es auch nativ auf einer AWS-Minimalinstanz (debian 12) zum Laufen bringen.
Warum die Heinis von Photoprism die native Debian-Installation geheimhalten ist ein Rätsel, die Docker-Installation braucht locker mal 4,5G.
docker compose up -d
sudo du -sh /var/lib/docker
4,5G /var/lib/docker
docker images
REPOSITORY TAG IMAGE ID CREATED SIZE
photoprism/photoprism latest ee523389580e 2 months ago 1.82GB
mariadb 10.11 6e74e5a7ddb3 2 months ago 404MB
Die Images haben eigentlich "nur" 2,2G, dies wird aber im laufenden Betrieb verdoppelt
docker ps --size
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES SIZE
053fb7d2cb94 photoprism/photoprism:latest "/scripts/entrypoint…" 9 minutes ago Up 9 minutes 0.0.0.0:2342->2342/tcp, :::2342->2342/tcp, 2442-2443/tcp photosprism-photoprism-1 227kB (virtual 1.83GB)
9c726b4309ef mariadb:10.11 "docker-entrypoint.s…" 9 minutes ago Up 9 minutes 3306/tcp photosprism-mariadb-1 2B (virtual 404MB)
Nach docker compose stop
sudo du -sh /var/lib/docker
2,2G /var/lib/docker
Wenn man den Speicherplatz lieber für Photos verwendet und nicht gleich Amazon noch reicher machen will, kann man auch die native deb-Version installieren.
Ich mußte dazu meine alte Debian11-Instanz (bullseye) auf 12 (bookworm) upgraden. AWS bietet inzwischen fertige Debian12.4-Instanzen an.
Ich mußte nicht mal die Apache http_proxy-Konfiguration anpassen, weil die native Photoprism-App denselben Port verwendet, wie die docker-Instanz (localhost:2342).
Hier bekommt man das Paket:
https://dl.photoprism.app/pkg/linux/deb/
Heute auf AWS geholt:
wget https://dl.photoprism.app/pkg/linux/deb/photoprism_231219-c6cad4614_amd64.deb
(248M)
dann:
sudo dpkg -i photoprism_231219-c6cad4614_amd64.deb
nach Installation des deb-Pakets unter /opt/photoprism: klarer Vorteil: 449M gegenüber den 4.5 G des docker-Krams.
MariaDB-Server muß man fairerweise noch dazurechnen, aber den braucht man auch für andere Sachen auf dem Server.
Schritte nach der Installation
Fazit
man hat ein schlankes Photoalbum, das auch noch super performt, obwohl die angeblichen Requirements überhaupt nicht erfüllt sind (AWS Debian Minimalinstanz 500M RAM, 1G swapfile, 20G HDD, 2 Core).
Zu beachten ist allerdings, daß man in der defaults.yml die TensorFlow-Gimmicks bei der Indizierung ausschaltet. Ansonsten kommt dieses Setup an die Grenzen. Auch mit abgeschaltetem TensorFlow kann man bei der Erstindizierung (mit Thumbnail-Erzeugung!) seine Burst-Kapazität ausschöpfen und das Ganze läuft bei sehr vielen Photos nach einigen Minuten nur noch in Zeitlupe. Das ist aber bei weiteren Uploads nicht mehr zu erwarten.
Jetzt kann man auch docker-ce und alle Dependencies entfernen und bekommt nochmal 430MB dazu:
sudo apt remove docker-ce docker-compose-plugin docker-ce-rootless-extras docker-ce-cli
sudo apt autremove
```
After this operation, 431 MB disk space will be freed.