Settings

Theme

Ask HN: What are some self-hosted photo organizing/sharing programs?

81 points by eeemmmooo 2 years ago · 69 comments · 1 min read


I’m looking for a good privacy focused photo hopefully self hosted programs to backup and share photos. With the way everyone is training AI on everything now, I don’t really trust google, apple, etc with my photos and videos. So what are some good options that I can put on my home server and self host to share and organize my families photos.

My wife would also be using it and she isn’t the most tech savvy. So something that is easy to use after initial setup would be ideal.

TIA

kareemm 2 years ago

I use Synology Photos to back up to my Synology NAS in the basement:

https://www.synology.com/en-global/DSM70/SynologyPhotos

It has mobile apps that back up photos automatically. My wife and I each have the iOS apps running and photos just upload magically to the NAS. Viewing photos is a good experience too. I also use another Synology app to back up my photos from my NAS to AWS Glacier.

Super happy I moved them from Shutterfly.

  • crumpled 2 years ago

    +1 for Synology photos. I back up automatically to my NAS, and sharing is a breeze.

    If you're going down the "self-hosted" path, Synology will be the answer a lot of the time. All your music and videos, etc. There's even a Google Docs-like office suite.

    I'm have kiwix on mine via docker and have self-hosted Wikipedia.

    • psychphysic 2 years ago

      What does self hosted Wikipedia achieve practically?

      • crumpled 2 years ago

        I created an intranet portal for the house with a kind of prepper Internet. Plenty of things to do but no connection required, which is nice. It contains wikipedia, and other good kiwix packages like project Gutenberg. Our media and stuff.

        Raising a young child, my partner and I try to model minimal phone usage and low Internet usage. But when you gotta use the Internet, it's fun to open up the intranet and let the answers flow from there.

      • samstave 2 years ago

        If private, a private familiar photo history would be great...

        There was a company called ORIGAMI that launched into private claiming to solves such - and they got acisition-hired before they could even launch and then the entirety of the team evap'd

        but we still need a solid solution in a PI powered black-box with "facebook in a box for a family" with a familial social calendar...

        this is what Nextdoor attempted to do - but its run by sketchy people I would never trust - we need a solid little container on a Pi that allows for a NAS of pics and a calendar and an air-tag tied to all our shit so we have a home hub that with a single click shows all the things/folks attached and then a timeline of all the pics taken (I appied to YC to this FN 10 years ago)

        • crumpled 2 years ago

          You don't need any external accounts or services. You can turn on a dyndns service or a proxy service optionally, for convenience. You might need an account for those. You can and should wall the thing off.

          What happens is, your photos only back up when you are at your house, or when you connect your phone to your VPN.

          • crumpled 2 years ago

            I misunderstood.

            You were talking about sharing to external family, oops

            It would be cool if we could do peer to peer federation.

        • reacharavindh 2 years ago

          The problem with centralizing everything like this is it becomes a honeypot and to make things worse it is expected to be run by the common non IT person who may not even recognize that they have been pwned. I admit it sounds like a dream, but realistically, I see how difficult it is to achieve.

SanchoPanda 2 years ago

Believe it or not, Plex. It's a truly mediocre photo organizer, with glaring missing features, but because I already have a Plex server - it's zero marginal work aside from just dropping the photos in a folder on the NAS running it.

I use FileBrowser to autosync the photos off my phone, and family can easily access them because they already know how to use Plex. The fact that there is a client for every device I have ever used is icing on the cake.

If you have a plex server, obviously a very big if, worth investigating just turning it on for a folder of files since it doesnt write to the images itself by default.

  • ajdude 2 years ago

    Seconding plex. I was able to share photos with family, even grandparents, by giving them access to our plex share.

  • PrimeMcFly 2 years ago

    I always thought Serviio was a much better option than Plex, and has the benefit of working much better with any DLNA client.

  • infinitezest 2 years ago

    I thought they removed this functionality awhile ago. It appears I am mistaken.

    • SanchoPanda 2 years ago

      They have made it clear it is not a focus, and killed features, but that all seemed in the interest of making it something that continued to function without much work on their end. Which seems fair enough.

mirchiseth 2 years ago

A comprehensive list comparing features

https://github.com/meichthys/foss_photo_libraries

Personally I use Photoprism installed inside TrueNAS Scale. They don't have a good mobile app that syncs with the NAS. So might try Immich in future.

  • lugia_ 2 years ago

    I have both configured. Photoprism doesn't have a native app but I would recommend using PhotoSync if you are on iOS. It works infinitely better than Immich's upload for camera rolls that have 50k+ photos/videos in them. It also works in the background much better than Immichs app.

ivanstegic 2 years ago

Get the Monument device, attach as much external usb storage as you want and watch it do pretty much the same thing Apple Photos does but locally on the device. iOS and android apps. More than one user — my fam uses it. Plus you can backup the files to any SFTP storage. And the usb drives can mirror each other too. Highly recommend. https://www.getmonument.com/

  • ramg 2 years ago

    Does the Monument device have the option to share albums/folders across the Internet? Do I need to open a hole in my firewall for this?

    Edit: I've reached out to the Monument team as well.

    • ivanstegic 2 years ago

      Works really well with families - each person can have the app installed and it’ll bring all photos onto the device. Yes you can share photos and albums. Yes you need to make a firewall config, otherwise you’d be hosting elsewhere in the cloud. There’s no way around that.

qtETlwyxkD 2 years ago

Step 1: Install XAMPP by going to https://www.apachefriends.org/download.html -- Download option "8.2.4 / PHP 8.2.4" or highest current version for your operating system. -- Note the directory where the files were installed. -- Inside the directory, open the "htdocs" folder. -- Create a folder here called "images" or whatever you like. -- Copy your images to this folder. -- Launch XAMPP, if not already launched.

Step 2: Download this free image organizer from https://www.files.gallery -- When you click on download it will download a single file called "index.php".

Step 3: Copy the index.php file you just downloaded to the images folder you created. -- Navigate in your browser to http://localhost/images/index.php (or replace images with whatever you named the images folder)

ENJOY!

  • poisonborz 2 years ago

    Don't recommend this. Bare metal install is very outdated nowadays. You surely want to use your server for multiple purposes down the line. You shouldn't install every app directly on your main OS - any misconfiguration or problem will bring down all other services, or make a machine-wide security issue. Also an attacker of one app will gain instant access to your whole server.

    - Either use something simple and user friendly, like Synology with it's marketplace apps - Or use virtualisation host OS that allows you to install multiple containers/virtual machines, each for your own application, like Proxmox - Add containers via some container manager like Portainer or CapRover

    Maybe these options seem like a bit more complicated first, but you will be very thankful for the invested time.

    • bayindirh 2 years ago

      As a person who does sysadmin work as a day job, I can't disagree more. For something for a home server with very light load, VMs are extra heavy. For someone not knowing container networking and reverse proxies, things are complicated and more prone to misconfiguration.

      Also, not all services are best suited for containers. JSWiki doesn't like to share the host, and wants its own subdomain. NextCloud from Container is a painful experience when it comes to add-ons from its built-in store. Installing it directly to OS is 1000x smoother.

      The biggest exception is GitLab. When you install the OmniBus package, you can only use the server for GitLab, however, with that resource usage, you won't want to share it with another service, anyway.

      When you give half the effort required to install a couple of services to bare metal, things work more efficiently, without any downtime, and any problems actually.

      Any half-decent distro has the relevant packages in recent versions, good security support and constant updates. There's no reason to not install a Debian stable box with auto-updates enabled and servers downloaded from official repos.

      I managed to run 5 services on an OrangePi Zero with 512MB RAM with no downtime and performance problems. It's possible and enjoyable.

MehdiHK 2 years ago

I recently discovered Photostructure. After trying a few other alternatives, this is what I prefer now.

https://photostructure.com/faq/why-photostructure/

  • mceachen 2 years ago

    Neat! I'm the solo developer of PhotoStructure.

    Know that there's a very active community of PhotoStructure users on Discord: https://photostructure.com/go/discord/ -- although I opened it as just another support channel, it's evolved to include discussions about future feature work, self-hosting, digital archival, privacy news, hardware, and photography, too.

    I self-host https://forum.photostructure.com/ that uses Discourse, but it has 10-20x fewer posts on it than Discord.

    OP: Make sure you get backups in place (and one offline) before trying any of the software suggested here--it reduces your risk from "oh-no-what-have-I-done" and "what-in-the-actual-heck-is-this-app-doing-and-where-did-all-my-files-go" to zero.

solarist 2 years ago

There is also Piwigo which is open-source and can be self hosted.

https://piwigo.org/

  • antx 2 years ago

    I have been hosting it locally for a couple of months now.

    Stuff I like:

      - The mobile app is quite friendly
      - It supports "automatic upload" (after opening the app)
      - It supports deleting pictures from the device after uploading (to save space... much needed on the wife's old iphone)
      - The pictures are stored hierarchically on the filesystem
      - Very lightweight (the whole docker setup uses less than 128MB of RAM)
    
    Stuff I'm not a fan of:

      - The web interface is "okay". It could use some modernizing.
      - When there's no more space on the device, the app fails to upload new pictures, but gives no error message.
    
    All in all, Piwigo is a solid 7.5/10 for me, but I'm watching and testing some other active software such as https://immich.app/
  • sliken 2 years ago

    I'm a fan, especially the virtual folders that can be based on tags, that I add with digikam.

noja 2 years ago

Static or not? I like https://github.com/rtts/photog (static)

gala8y 2 years ago

https://www.digikam.org/

digikam is a bit hard to grasp at the beginning. this video helps https://www.youtube.com/watch?v=GCKInEFF_AE (configure digikam > collections is where you want to be)

  • sliken 2 years ago

    I'm a fan, makes it super easy to go on vacation with family, suck in all the photos from 5 cameras, and tag them all. It's particularly good at things like select 2 weeks of photos, tag them with the vacation location, then pick ranges to tag bears, rainbows, avalanches, people, flowers, waterfalls, etc.

    Granted I suspect 90% of my tag usage is grand parents finding all the grand kid photos. It works really well with piwigo mentioned on another thread.

    • gala8y 2 years ago

      Fan, too. Had some stability problems two years ago, now it's smooth. Having access to quickly shown thumbnails is yes or now for actually accessing photos/images and enjoying watching them and working with them.

      I didn't try option to write to metadata for compatibility.

      Will have a look at piwigo.

  • mikewarot 2 years ago

    I use DigiKam as well, under Windows 10. Recently the facial recognition has gotten better, and it's far less crashy than it used to be. I've got about 400,000 photos taking 650 Gigabytes.

    • gala8y 2 years ago

      I have 125k images and 57k photos totaling 280GB and it's smooth. I switched to desktop recently which definitely adds some points.

leipert 2 years ago

Have a look at this list:

- https://github.com/awesome-selfhosted/awesome-selfhosted#pho...

Personally I am looking into immich right now: https://immich.app

gidorah 2 years ago

I use Photoprism. First I import to Digikam, process, then have Photoprism read all the files.

ghgr 2 years ago

If you want something easy to deploy, zero maintenance (almost) and with a tiny footprint I can't recommend PiGallery [1] enough. Also good mobile support.

I tried some of the fancy alternatives here suggested, but they insist in doing it their way. PiGallery just displays your folder structure as Albums, simple as that, whereas others like Photoprism keep ruminating in the background doing their AI, which I personally don't need.

Pair that with a good backup strategy with e.g. restic and you're ready to fly.

[1] https://bpatrik.github.io/pigallery2/

all2 2 years ago

I'll mention Owncloud Infinite Scale even though I couldn't get their docker container to work (something about not setting JWT something or other). It is a rewrite of Owncloud in Golang and is purportedly stable and fast.

aborsy 2 years ago

Photoprism, Immich perhaps also nextcloud.

jack_arleth 2 years ago

I had a similar issue and wanted a "Google Photos" like product. So a web-interface with a time-based list and an phone-application that automatically back-ups.

I'm currently using Synology Moments/Photos which comes for free with a Synology NAS.

I've recently been on a trip with random strangers sailing on a boat and I could easily request the others' photos, import them in an album and share it with the rest of the group.

I'm struggling to find a better alternative that is workable and is almost set-and-forget.

  • ransackdev 2 years ago

    If you’re feeling adventurous you can run the synology dsm os in a vm (qemu/kvm in my case). You use tinycore[0] as a boot loader to bootstrap the official Synology image[1]

    It can be a bit of a pain to setup but once it’s up and running you can run all synology apps, including photos and even their nvr software, backup your home pcs to it, etc. If you pass through pci sata controllers you can bypass any disk virtualization layer and let synology manage raw disks exactly like a metal install in one of their nas machines would do. You could even swap the disks into an official nas later on if you wanted. The synology apps are highly polished and worth the setup imo.

    There’s also a docker image that makes it all trivial, but it’s too many layers of abstraction for my tastes[2]

    0. https://github.com/pocopico/tinycore-redpill

    1. https://www.wundertech.net/how-to-install-xpenology-on-proxm...

    2. https://github.com/kroese/virtual-dsm

BerislavLopac 2 years ago

I've been trying to find a tool that would could do the following steps:

  1. Find all the photos (and ideally videos) in multiple, nested directories.
  2. Copy the found files over to a single new directory, ignoring any duplicates.
  3. Rename the photos in a standard way, ideally using the creation time.
One tool that was recommended was PhotoStructure, but I wasn't able to make it do what I wanted. :/

Does anyone have any recommendations?

kpeeters 2 years ago

I wrote a small tool to serve shotwell photo/video collections online directly from a copy of the shotwell photo folders and its sqlite database,

https://github.com/kpeeters/shotweb/

It allows me to stick to shotwell for the actual collection management, while still letting me share events or the entire collection to friends and family.

anon291 2 years ago

I use chevereto because it lets me store my images on Minio / S3-compatible storage layers. The problem with most of the tools I've seen is they assume they have a directory of photos. My setup is complicated though and the machines that run my containers don't have a whole lot of disk space.

UI is good. Sharing is good. no real problems.

shmoogy 2 years ago

Immich is quite good but in its infancy - I paused my containers, filed a bug report on the discord, and set a reminder for September because the iOS app kept crashing while uploading.

If they keep focused on it - should definitely be a top contender

I did not like Nextcloud but have not tried the rewrite in Go

  • all2 2 years ago

    Owncloud Infinite Scale is a rewrite of Owncloud which NextCloud forked from.

ohthehugemanate 2 years ago

Photoprism is great, but Nextcloud's "memories" app is even a step better, especially if you already have a Nextcloud install. Definitely pair with their "recognize" app, which does the AI tagging and face recognition thing for you on any hardware.

version_five 2 years ago

I'm in the exact same situation, actually posted an ask HN yesterday: https://news.ycombinator.com/item?id=37133408

I'll be interested to see what else turns up here.

ortusdux 2 years ago

Can anyone recommend one that would work over a local WIFI network without internet access?

  • poisonborz 2 years ago

    Any of these. You can access your server locally via its IP address (disclaimer: some might require additional configuration as they require a pre-set hostname)

infinitezest 2 years ago

Really surprised by all of the support for Synology Photos. I love it for a lot of things but this was totally unreliable for me. Must be some sort of config issue on my end.

ryandrake 2 years ago

I keep it simple: Directory on a Linux-based NAS for storage, NFS for sharing (SMB if your wife uses Windows). Free, easy to set up and use, comes with the distribution, will run forever with no maintenance once set up.

theatomheart 2 years ago

I like Sigal. Havent seen it mentioned here yet. Does no one use Sigal??

http://sigal.saimon.org/en/latest/

hosteur 2 years ago

Digikam for photo management. Sigal gallery for photo sharing. Cron job to generate sigal daily.

Backup is I have my photos is svn and back that up via restic.

jimmySixDOF 2 years ago

I am looking for something a little more specific to make a gallery out of screen shots with OCR and combining the dates and metatada with any text extract.

Photoprism looks close but no OCR.

ezfe 2 years ago

Not an answer to your question and not trying to be, but iCloud Photos is E2E encrypted if you enable Advanced Data Protection in iCloud settings.

jrnichols 2 years ago

Is something like Pixelfed an option?

https://pixelfed.org

poisonborz 2 years ago

Backup/sync and also share - Nextcloud

Google Photos replacement - Immich

Just share some gallery that you have on a NAS with friends - PiGallery

Zetobal 2 years ago

I use eagle.cool and sync the lib with rsync.

superkuh 2 years ago

Install nginx. Put the photos in folders in your ~/www dir. Enable indexing. It's incredibly secure and has pretty much zero maintainence. Just link people to the http://yourIPhere/photos/ dir.

It will be very easy for the wife to use since all she has to do is put the photo files in folders using the normal operating system GUI. This is something everyone knows how to do.

  • dewey 2 years ago

    That's not really "photo organizing / sharing", that's just a directory listing.

    What you want from a photo specific software is things like thumbnails, exif info, powerful search, maybe indexing the content of the pictures (Searching for "dog") etc.

    • superkuh 2 years ago

      Ah, in that case after the wife has looked at photos, named their file names accordingly and put them in the dir she can run http://xome.net/projects/jigl/ or any other .html photo gallery generator. It'll show thumbnails, exif info, and she can press ctrl-f to search in the browser.

      I guess you want the gallery generation to be automagic though. Might be some work but you could whip up a cron shell script to see if any sub-dir in ~/www/photos/ has files and doesn't have an index.html and have it autogenerate them.

      As I write this I do realize it's starting to get pretty complex. Almost like you'd wish for an all-in-one solution like you'd asked. But I still think this method would be better long term though.

    • Sakos 2 years ago

      I feel like this is the kind of thing where an amalgation of Linux tools hacked together and based on this would offer a significantly better solution than most self-hosted media serving software I've seen.

      • dewey 2 years ago

        If I'd have to choose I'd take a kinda-good off the shelf solution over a "Linux tools hacked together" solution any day.

        Especially because I don't want to maintain something important like a photo collection forever. Having other people in the family being able to use it by just installing some mobile app off the app store is also a big plus.

        • Sakos 2 years ago

          Of course, so would I. But I haven't found any kinda-good off the shelf solution. They're all sorta bad in their own way. Plex and Jellyfin constantly frustrate me with the bizarre unfixable issues I encounter.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection