Looks like Nix could be great for this. Here's a blog post with an example: https://mitchellh.com/writing/nix-with-dockerfiles
Of course, the trade-off is having to learn at least the basics of Nix, but look like a great investment considering the advantages.
Hey, I want one for uploading DSLR photos while traveling too. Did you try some small edits with Digikam or Darktable? Curious to know how well (or not) they work. Thanks!