Hacker News new | ask | show | jobs
by r_p4rk 1079 days ago
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.
1 comments

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)

[1] https://github.com/photoprism/photoprism

That Dockerfile doesn't seem to do anything because it inherits from another container that probably has more interesting stuff in it.

In any case, I found this in the docker/ subdirectory (if it was me I would have put it in the main README):

https://github.com/photoprism/photoprism/tree/develop/docker...

  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
I found this too. They mention this:

  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.

For example, for Ubuntu 20.04:

https://github.com/photoprism/photoprism/blob/develop/docker...