hi. i’m looking for an extremely simple selfhosted photo gallery software.
i have photos from my laptop, a camera, and my phone. they are all rsync’ed onto my server. so on the server I have ~/Pictures/Laptop ~/Pictures/Camera ~/Pictures/Phone filled with JPEG/PNG/HEICs and no subdirectories.
i want to view photos from all three directories on a single timeline/feed, from the web (and if possible, via a mobile app). currently I VNC onto the server to run XnView and check each directory and this is a terrible user experience especially on a phone.
i don’t want to run a separate database or anything complex, so things like Immich or Photoprism are not an option. would be nice to be able to assign a tag to some images (“work”, “computer”, …) but it’s not a necessity. and i don’t need the ability to edit/remove images from the gallery.
i’ve considered rolling my own solution but thought there might be something already available.
thanks!
I recommend Ente, they have a self-hosted option. https://ente.com/
I refuse to use Docker to install applications, so Immich was also a no-go for me. I settled on using Photofield, it’s been pretty great: https://github.com/SmilyOrg/photofield
If you’re using Arch, Immich is in the AUR, that’s how I’m running it bare metal.
I run Debian on my VPSes. But, also, I’ve been through the path of doing what the PKGBUILD does, which is read the Dockerfike and manually execute the steps: I think it’s pretty problematic to have to do that every update cycle. Got Immich set up, looked at what I’d have to do every time I want to run an update, and "nope"d out.
With server side software like this, which will usually be running behind a reverse proxy and will connect to a postgres dB (or other services like Redis), I kind of don’t want to fight the software/make guesses to create these connections. I also take umbrage with the nginx proxying “example” configurations - just tell me what needs to be proxied to where and let me handle the rest; it’s a server, you don’t know my setup. Case in point, I don’t use nginx.
I like photofield because it’s a single binary (thanks, Go) listening on a port. I proxy what I need to it, and let it run.
Final note: I’m not knocking Immich, or the people who run it. I just think it’s lazy to distribute software with Docker because it encourages devs to write what I consider to be poorly designed software (E.g. Software with hard coded paths as strings, because everything is expected to be in the same place on every system - basically very rigid defaults). As a guy who knows his systems well, it annoys me I can’t manage them my way and need to run a nebulous docker container set up by some web developer. (some shade thrown there, my bad)
You don’t have to agree with me, I’m Don Quixote and this is one of my windmills.
Yeah, I get it. I do think containers encourage lazy integration - could be hard coded paths, or things like leaving
aptin there, so no worries.
Immich and use Immichframe to cast it to a raspberry pi with a screen. That’s what I do and it’s awesome.
You can create a server through AI in bash language for those folders. Or try Sigal or Piwigo.
Another vote for Immich. Running it with docker compose is trivial. Been using it for 2 years now and it’s been glorious. Running it without docker would take more setup, not sure how complex.
Immich works really well. Don’t fear the database. Docker makes it all super easy too.
Alternatively, Plex manages photos ok-ish.
I really don’t want another complex service i have to manage. ideally i want something that’s a simple python/perl/php script or something like that.
forgot to mention in OP but I run freebsd on my server and it’s possible to run docker(podman) with linux emulation if it’s very necessary, but i prefer not to use it
I hear you, I went through the same journey. After getting Immich set up, I haven’t had to do a single thing to it. There are scripts that can turn your folders into Immich albums, so I just set up the docker containers, ran the script, and watched as everything was created for me without more labor on my part.
I hope somebody else has the solution you’re looking for, but if you don’t find it, I really think you should give it a whirl because it turned out to be way easier than I expected it to be.
Immich isn’t complex, and I don’t think it requires a separate database.
Edit: just checked and technically it does, but if you use the docker compose then it deploys it automatically and you don’t have to think about it at all.
Edit2: if you really want something dead simple, yeah you could trivially write a tiny script to list and thumbnail images. I’m sure there are apache plugins for exactly this.
You’re likely not going to find something so simple and lightweight. Immich has some setup, but if you want a good gallery that’s the way to go. Don’t be afraid of the learning.
It does nothing but serve photo. Background tasks are minimal and many of them only run once on new photos.
I’ve been using Immich for a couple of years now, and I really like. Nextcloud is good, too.
TinyWebGallery?
this might actually work. thanks!
PiGallery/PiGallery2 , Photoview, HomeGallery, lychee, or thumbsup might be up your alley.
Personally I use Immich and ImmichFrame.
It looks like every reply in this is a near miss so I’ll add another one to the pile: I’ve been working on a hosted immich platform for people who want privacy from big tech and don’t want to / can’t self host it at https://photos.minpin.me/
PiGallery is what you’re asking for, but you should consider Immich, it’s very simple to setup and you’ll get tons of features more that are extremely useful. I get you want something simple, but I don’t feel Immich is hard to setup or maintain, and it’s the difference between a simple photo gallery and google photos.
deleted by creator
I have a use case where I use Next Explorer to share some directories with photos in them for others to see online. Clean, simple UI and no database, it just indexes your directories. PWA works well on phones.
It does run on docker though (like many, many foss apps). 🤷

Here to suggest piwigo. Use it with docker, zero hassle but I think it does depend on a database, so it might be too heavy for your use case. Supports tags & galleries.
I’ve been using PiGallery2 for this https://github.com/bpatrik/pigallery2
But I do deploy via docker.










