I deployed this recently and added a bunch of pictures to it. PhotoPrism prominently features an AI-generated (?) 'description' on each photo, but for 98% of my photos, it was unable to come up with any description. The install procedure is needlessly complicated, there's no good reason for an app like this to require docker.
I disagree with the contention that docker makes installs more simple. I would argue that it only makes installs more simple if you are already setup with Docker, and only when things go 100% correctly.
When I see a software application that recommends Docker for deployment, I always assume that I'm going to need to do extra work to make it behave correctly. Whether that is figuring out how to make it auto-start, or how to forward network ports, or how to share a data partition with the host OS.
Non-docker installs are simpler. At least, for my skill set.
Can't you just copy what the Dockerfile is doing bud? Plenty of home server enthusiasts love docker for the simplicity it brings to handling a bunch of software. Not trying to knock you, just wondering where the complexity is coming from for you.
Sure I can. But it's not always that simple. Let's look at the repository for the software discussed in this thread [1]
I see one dockerfile and 7 docker compose files (.yml)
The dockerfile does not apparently do anything useful. I'd be amazed if running that dockerfile by itself produced anything useful
Now, I don't know very much about docker compose, but I learned a bit of it in order to get this software running on my server. If I worked at it, I could almost certainly get a working install of PhotoPrism without using Docker, but it would be annoying work, and I wouldn't have any certainty. I wouldn't know that it was correct, and any time something didn't work the way I expect, I would worry that I screwed something up during the installation
Not to mention the added operational complexity involved in managing a dockerized application compared to managing e.g. an equivalent webapp deployed without containerization (systemd service file, configuration file, etc)
Building From Source
You can build and install PhotoPrism from the publicly available source code:*
git clone https://github.com/photoprism/photoprism.git
cd photoprism
make all install DESTDIR=/opt/photoprism
Missing build dependencies must be installed manually as shown in our human-readable and versioned Dockerfile.
I haven't been able to find any dockerfile that lists dependencies. My guess is that the documentation is referring to some prior architecture or something similar
And the word "Dockerfile" is a link to a nonexistent page... they definitely skipped their grep + sed update homework when moving things around.
Noticing the broken link points to photoprism/docker/develop/Dockerfile, I supposed they had moved it and indeed, just by going one parent up, the directoy photoprism/docker/develop/ contains subdirectories for lots of base systems, each one containing a Dockerfile that lists dependencies needed for each of them.
Oh yea but if it doesn’t recognize a face then you can’t do anything. I have plenty of photos where the face is right there, but photoprism just didn’t recognize that there’s a face, and I can’t manually point at it and say “add a face, name it xxxx”
Overall, I was underwhelmed