Just a few weeks ago, facial recognition was added and that was it for me. I finally made the switch from Google Photos and iCloud to immich. It's your self-hosted google photos alternative, with image recognition, a map, sharing folders publicly, or with other users on your server.
Some parts will be buggy though, like face detection, or memories. But the whole "backup & sync" part is very reliable, I've never had any issues.
> Some parts will be buggy though, like face detection, or memories.
Frankly, I have had issues with Google Photos already. For me, it simply stopped recognizing faces since last October. I tried disabling and then enabling face recognition multiple times, but to no avail. It starts recognition from scratch, but only for photos before October. Writing to the support didn't help (although I didn't expect it to anyway), so alternatives like this one are becoming more and more tempting.
I'm already self-hosting a bunch of things, but facial recognition (when it was working) was much better in Google Photos and a major reason why I'm paying for additional storage.
From what I can tell, Immich, Ente, and PhotoPrism are the best of the batch when it comes to open source photo storage and management. They are all good, but it depends on what you’re looking for.
Personally, I want: E2E encryption, on-device face recognition, and the ability to self-host as well as a paid option for people who don’t want to manage their own server. The existing options each hit about 90% of that, but it’s a different 90% for each one.
Photoprism had the critical flaw of being single user last time I tried it, making it neat but a complete non starter for someone with a family larger than 1.
The same goes for me and I imagine many more. This is literally the only thing holding it back from being the perfect Google Photos replacement for families with someone who self-hosts.
Is there anyone in your family that you really want to have access to all your photos? Not even referring to just NSFW stuff. If your answer is "as the admin I'm the only one that can access everything" then consider the question from your family's POV. Not trying to discount your point only pointing out that single user and e2ee implementations have some value.
You make a good point and you are right, but for me the concern is that the same account can break a lot of stuff. I agree, if I put a photo out there, I don’t care who sees it if I’ve given them the password. But I just worry about people deleting things, mucking up the database, etc.
That's fair. Personally I'd like to see (and am working on) more solutions that make it realistic for everyone to run their own single user instances. Selfhosting shouldn't be any more difficult less secure than running an app on your phone.
All the photos, no; but adding users from my family to back up from their devices, see their content, and share things between family members is a huge gap in Photoprism and why I stopped using it.
iCloud photos has all of that except the self-host option. You may be aware - just saying as I didn't see it on your list, and the E2EE is somewhat new.
I’m currently using iCloud. It’s great, but the E2EE comes with the huge caveat that they scan your photos before encrypting, against a giant unaccountable database of hashes for bad stuff.
Even though I totally believe that the current set of hashes really does represent truly horrible stuff, I also suspect that it will expand over time to include anything that threatens those in power. In other words: they are coming for your Bernie memes.
So I would like to have a more secure option that doesn’t depend on the whims of the powerful to decide which images I’m allowed to own.
Apple shelved this feature a while ago, what you are thinking about is that it uses an on-device AI to scan for nudity in pictures sent to minors through iMessage, which doesn’t report anything back to apple.
Let’s hope it stays shelved then. In my experience, things are much easier to sneak into the details of some random update once the key functionality has been built and deployed. The root issue here is a loss of trust.
As someone who tried to organize a few hundred photos on iOS, the UX is severely crippled. For example, moving pictures from one album to another, or an album from one folder to another, are still unimplemented, among many other simple things.
It might have all those good features, but it lacks a practical user experience.
Why not go for immich, and try adding the E2E on top? Immich will encrypt the pictures before sending them on the server, and decrypt them when trying to access them, local thumbnails, etc. That could work?
I guess the Github description/HN title is incomplete, it's curious that it's saying it's a backup solution, but what is visible is an web-based photo browser... yeah yeah I get it, just like Google Photos (i.e. App-Which-Must-Not-Be-Named according to the docs[1]), the web viewer is part of the package...
I guess it needs a better description, IMO a project with several big components (web, mobile, backend) sells itself short being named just "backup solution".
Add a 2 3 line description right after your heading before Disclaimer and all other stuff that what this project actually is. What does self hosting and mobile phone mean here (I don't know if it makes your phone a backup server)
It does feel like we keep going backwards for functionality while resource requirements keep increasing.
Picasa had face recognition, basic editing, and a bunch of sorting features and ran on computers that had something like 1/50th the CPU performance.
Meanwhile modern replacements like DigiKam, Lightroom, ON1, and so on are incredibly bloated with very slow UI response even on a very powerful desktop PC.
Although Immich does at least work well, the webUI is extremely fast and loads images instantly.
which is odd, because nearly every modern cpu has some sort of hardware acceleration available for AI stuff... has the tech stack just become so convoluted that we're actually going backwards?
I do with they had OSS'ed the code for at least the desktop app, but maybe there were licensing issues? or just no one cared.
> Meanwhile modern replacements like DigiKam, Lightroom, ON1, and so on are incredibly bloated with very slow UI response even on a very powerful desktop PC.
Darktable and ON1 feel decent snappy on my ~8 year old Desktop PC.
Though it was a looong time since I last tried Picasa.
Picasa was veeery fast on my dual core, 4gb ram, spinning rust laptop from 15 years ago. I’m trying to remember if I was using the laptop I got in 2006 which only had 2gb of ram or it was the upgraded one I got a few years later with 4gb, but either way it was incredibly fast on machines we would laugh at today.
And is usable for large libraries. Digikam halts everything to a freeze if you use more than a very little amount of pictures. If your program is a photo management software, you need to be able to index/search/manage 1TB+ of images with ease.
Picasa was ok, you needed to train it a bunch if you wanted good results for facial recognition, that being said, I did use it for our high school yearbook to make sure I had enough pics of everyone and once I'd trained it with enough photos it rarely made mistakes.
This looks incredible with the local search and context awareness. Curious if there is a comparison to other tools like photoprism about the advantages of Immich
Oh cool, thanks. I meant to add that in my comment; It's probably not far off a decade since I looked at nextcloud, so my impression is very out of date!
Nextcloud is built for generic files, so you'll not get all the "smart optimizations" for images. Immich is intelligent enough to serve you a decent enough compressed image at first, and load the full image in background while you start to stare at it. On the other hand, Nextcloud will show you a loading banner.
Immich also does use CLIP to cluster similar faces and so on. Not only that, geotagging, camera details etc.
Consider using the Immich CLI (https://github.com/immich-app/CLI) for a bulk import. The UI might hang, not give you a reliable picture (pun intended) of which files succeeded and which files failed.
I've been using this for a few weeks, it's quite nice. Automatically backs up my phone photos, and I also imported a huge folder of existing photos on my NAS.
Emailing is a decent solution, but which may cost money, unless your phone is connected through WiFi.
I have always failed to see the appeal of a cloud solution.
Whenever I arrive at home, I immediately move all the new photos from my mobile phone to my computer. This costs nothing, except a few seconds of my time and it is perfectly secure.
I prefer to not keep any personal information on a mobile phone, except the mandatory list of contacts.
Hey man, maintainer of the project here. This is one of the feature we are working toward, after getting the Facial Recognition some more loves and fine tunning :)
1) It's storage with an S3 API, so should work fine, you just have to figure out how to manage and view the backups on your own.
2) It's a replacement for google photos.
3) Ease of use and flexibility, you can deploy a docker compose file easily on any host or distro without needing to deal with dependencies or OS specific glitches.
If you have your own server somewhere, Nextcloud is a very nice free self-hostable Dropbox replacement.
To your third point, I scratched my head and looked suspiciously at Docker from a distance for years, but since I've started playing with it, I absolutely love it and would not go back. Every dependency that you need is wrapped up in a single image, so installing the application is as simple as pulling the image and booting up a container from it; no worries about conflicts with other services, broken or conflicting dependencies, or breaking something later on when you make other changes. Don't like the exact installation and want to make your own? Make or modify a dockerfile, and build a new image. Want to upgrade? Just destroy the container and create a new one with the updated version - all your data, config files, etc. are (or should be!) in separate volumes from the container itself so you lose nothing, and in fact you can easily experiment with different releases, or rollback if something goes wrong. For myself, I treat all my containers as ephemeral and always recreate them whenever I restart them - it costs nothing and I know that the system is easily reproducible. Speaking of volumes, backups are a breeze - all my Docker volumes are just subdirectories of /docker/volumes so all I have to do is back that up every night and I've got a complete copy that I can instantly restore (or clone!). It really is incredibly convenient.
While containers solve a lot of problems, they do create a bunch of new problems. For example that 'every dependency' is a double-edged sword. Now instead of just one version of OpenSSL on my host I have a bunch. Half them are vulnerable, and none of them share the same memory.
Personally I'm looking forward to when this is included in Nix so I get a ephemeral/reproducible install that doesn't add a second copy of both postgres and ngingx.
you can already build such a system yourself quite trivially by getting an FTP account, mounting it locally with curlftpfs, and then using SVN or CVS on the mounted filesystem
I used it on a Pi 4 for a month or two. Everything else was fine but the pi was really starting to struggle running the machine learning container, especially when I imported a bunch of photos at once. I have it on a beefier x86 machine now and things have been smooth.
I like the look of this. I'm currently using PhotoPrism[1] and PhotoSync[2] as a combo to get the same thing and whilst it works fine I've always thought a single app would be far better placed.
Looks relatively straightforward to get running, pretty much inline with what I had to do in order to get PhotoPrism running in the first place. Only thing I couldn't see anything about was hardware acceleration, do leverage any of the Intel instructions (VAAPI) for transcoding? That's a paid feature on PhotoPrism and something that's sorely needed. CPU bound transcoding is terrible!
Think I'll put this on the TODO list for the weekend!
Nothing in iOS seems to have true autobackup because background apps don’t seem to reliably wake. What I find is that it works until the app is closed, like after an os update, and then you have to manually open the app before it will start going again. I have mine set to try to run whenever I plug in to charge, and it works pretty consistently until reboot, and from there I’m not consistent about remembering to open the app again.
Well, Google Photos works on iOS. And I presume they would be as much a third party app as anyone else. So it is possible. From what I remember reading in the past it is possible to get wakeup events for GPS location changes. I think that's one trick to get an app to run in the background.
I agree though. It's a shame how iOS is completely crippling background apps.
I'm hoping for an alternative for Google Photos and I'm paying for ente.io. It works fine on Android, but background sync doesn't work on iOS. So for me personally it is not ready to replace Google Photos. If it can't be set and forget for non-technical family members it's not going to cut it.
Thanks for pointing out the workaround with GPS, will look into it!
Currently on iOS, our servers send silent pushes to your device every hour. This wakes up the app and gives us 30 seconds to execute a background sync (provided you've previously not killed the app). This is not sufficient to backup videos, but it works pretty well for incremental backup of photos (I personally use an iPhone).
Oh, hey! ente.io is super promising! Have been following and paying for it for 2 years now :)
> This wakes up the app and gives us 30 seconds to execute a background sync (provided you've previously not killed the app).
I wonder if this is the crux of the matter. It doesn't work when the app hasn't been started in the first place, right? I don't know how Google Photos does it, but I'm pretty sure they have solved syncing without having to remember to open the app. I half wonder whether they achieve this by showing constant notifications about "look what happened x years ago" or "look at this new collage" that gets people to click on it and actually start the app.
It does. I use PS to sync to a WebDAV server I rent. I set PS to auto-backup when I put my phone on the charger and when I arrive at home (whether you consider this "auto" is up to you). I have opened the app exactly 0 times in the last year, and my photo backup is up to date as of this morning. PS is a shining example of a simple, reliable app.
I really like Seafile for this functionality. I host my own server using podman to run their docker container and it works super well. Their app has the ability to back up any photos/videos taken on your phone, in addition to other things it can do. Highly recommend!
Just curious, when people say selfhosted does it imply they control the hardware at their home? Or does buying a VM from an operator count as self hosting?
I prefer SyncThing on both mobile and desktop devices. It's open source and mature, the server only makes devices findable between each other. It allows 1 or 2 way sync. And it has advanced settings for keeping removed files (e.g. trashbin that cleans anything older than X days.)
+1 for SyncThing. It (now?) works effortless on my phone and having your screenshots and snapshots automatically on your NAS and PC to process them there is fantastic.
Didn't use the "rolling trashbin" feature yet but need to look into that
Yeah but it doesn't support syncing photos from the camera roll. So you have to use something else to copy photos from the camera roll to the mobius sync folder. I use the PhotoSync app for that, but it's not free and it's not that reliable. And the extra step adds even more latency to the whole pipeline. iOS allows these apps to run in the background only once per day generally, and so it can be several days before photos get all the way synced.
If this app can do background sync of the camera roll directly from iOS to an Android device in one step I may switch to it and stop using both Mobius Sync and Photosync.
AFAIK you can use SyncThing-like utilities, like Möbius Sync, on iOS, but not for photos, because… iOS does not consider a photo a file. Which is baffling (probably for some security reason), so I have to stick with a USB cord and ifuse + heif-convert on Linux.
Apple provides access to photos just fine, using a different API.
Having a separate API for photo access is annoying while developing this use case, but it's appropriate for a couple different reasons: for one, if apps could access the raw files, that could reveal metadata like location. For another, filesystem access wouldn't properly handle cloud-synced photo libraries.
Perhaps photos on iOS are persisted into some sqlite-style database on the device rather than as individual files...
The Dropbox iOS app would be a good example here. It acts as a ReplicatedFileProvider so apps on the device can access your Dropbox files, but it also provides an optional config flow where users can ask for their photos to be backed up. Then, the Dropbox app fetches the photos through PhotoKit and writes the .JPEGs or .HEICs to a folder of your choosing into your Dropbox files.
That’s what I mean, there are technical reasons why it doesn’t necessarily make sense to represent photos as individual files: they might not live in a file system, they might have to be downloaded, they might have to be transparently converted from one format to another, they might have to have metadata transparently stripped. Any applications are going to need to use an API to get the right form of photo that the user wants anyway. Having a dedicated API that users can call as they need makes more sense than having the operating system hackishly pretend that your photos live in a bucket of JPEGs somewhere
You can use it for photos, but for those contained within the photos library that's handled separately through the PhotoKit now. It should be technically possible to backup your photos library through syncthing, I only think the automation of such and the permissions required would probably be annoying to deal with. Not sure if Mobius developer(s) looked into that yet.
If you don't use the photos app, you can keep them all in the files app and it syncs just fine. Annoying to use since the files app is nowhere near as nice for photo browsing/management.
What I've done is to leave a Windows VM running which has both the iCloud Photos app, as well as Syncthing, both pointing at same directory. This then works as an iCloud/syncthing bridge, letting my iPhone sync with my linux machines.
Since this is upvoted so much, I wonder what people's complete setup is for something like this to replace, say, Google Photos. So once the photos are on a "server", what do people recommend for albums, sharing, metadata, geotagging, search, etc?
I personally still use and pay for Google photo. Mostly because I am lazy finding a better solution. As google photo UI is becoming worse overtime, I wouldn't mind an alternative though.
I'm not sure it covers all your features listed, but I use PhotoStructure [1] for the 'album' side of things. It's been mentioned a bit on HN, which is where I found it. Sharing is very open for me since I'm just sharing wholesale with family, but when I need to share specific images or albums to people, I usually do it via some other way that suits them -- so if they use messages, email, google drive, dropbox, or just want to download from a webpage (eg. caddy), I'll enable that.
I want an easier way to edit the comments on photos (as embedded metadata) that I haven't found yet. Any image browser where I can hit a convenient hotkey, type "Summer 2023 at the river with cousins X and Y" and move on would be great. If anyone has a suggestion I'm listening keenly! If this is built in to something on MacOS or a linux default desktop (like KDE or something I'm less familiar with), or is a small paid non-subscription app, I would buy it.
It gets backed up to all of these? On iOS I have tried all except Google and they are all finicky. Even iCloud/Photos.app seems to have a brain of its own.
And on the Mac Apple engineers have made sure the photos are not synced in a simple easy folder hierarchy that can be backed up elsewhere.
I don’t want it to be synced. I want my pictures and videos to be backed up.
I have 2TB on iCloud, 2TB on Google Drive, unlimited back up of photos on Amazon Drive and 1TB on OneDrive. When my OneDrive account gives out of space, I’ll just use one of the other 6 accounts that come with an Office 365 subscription.
I guess for an archive solution, I would use my personal AWS account that’s only used to store my videos that fell off the back of a truck once I took my Plex server off line.
I have 2TB of videos stored in AWS S3 Deep Glacier archive. I’m charged like $2 a month for it.
Yeah, I get your intent, but I think there's some conflation of backup and sync.
Here's a hypothetical - imagine you deleted a photo from your phone, and then modified (in place) a different photo.
Is your expectation that the first would be deleted from the various places you have it backed-up? (If not, then what's your process for fully destroying a photo?)
Would the second be propagated to each of your SaaS storage providers overwriting the existing, or renamed and situated adjacent to the original? And if you modified it in-place a second time?
If your phone were then to stop working and needed replacing, would the restoration process restore your phone to before, or after, the above deletions / changes were made? ie. would the deleted photo exist on your phone, would the second photo be pre, mid, or post modifications?
(I draw the distinction between backups and archives whereby backups get you to where you were most recently (pre incident), and archives let you restore to something like 'Tuesday afternoon, two weeks ago'. I'm talking here purely about backups vs sync though.)
how do you get the photos out of Google Photos (and delete them from there I assume?)? I started on a CLI that could track photos across different accounts and make it easy to move then between them i.e. from GP to s3 or to a local drive etc. Was going to include duplicate detection. But if there is already another tool...?
You don't. I currently run this setup and it's more for people who want to "definitely degoogle" more than they want feature parity with photos. This app is awesome, I intend on contributing if they need it, but it looks solid.
I don't want to degoogle, but having all my photos hinging on a Google account that can more or less arbitrarily blocked by Google gives me anxiety. Google Takeout effectively destroys your data by stripping all metadata from the photos and putting them into a json file. I haven't found a good solution for regular backups of Photos, has anyone else?
Call me old fashioned, but I just don't feel confident in placing my valuable data only with a provider like Google. One day there will be an "Ooopsee, we found a bug in our hash function (refactored by summer intern) and um...data for 'a very small number' of users was backed up to the /dev/null shard..."
Photoprism and piwigo seem to be the most used for self hosting. Haven't tried either but slowly making the self hosted move and these were on my research list.
I'm very satisfied with PiGallery2. I'd love to try PiGallery3, but I can't find it. Could you share the link for the project, or was it a typo? (hope not!)
I use https://github.com/jpsim/AWSPics , which takes care of everything. It's great IF you're comfortable with your whole photo solution being cloud-based (but you still own and control it, you're not just handing it all off to a SaaS), rather than being self-hosted. Personally I prefer the former these days, but I know that I'm in the minority here on HN.
With AWSPics, sync your photos (just a simple directory tree on your local device) to S3 (I just do it manually from time to time from my desktop, but no doubt it can be done automatically at regular intervals, and/or it can be done directly from a phone), then Lambda functions generate thumbnails and browsable galleries (as static HTML), then you can view it all via CloudFront (password-protected using Origin Access Identity).
AWSPics isn't really being actively maintained these days. But it still works fine for me. The setup is cheap, you basically just pay for the S3 storage (currently costing me a bit under $1/month - and I guess you could use a cheaper S3-compatible alternative like Backblaze and reduce your costs further). No server to set up or maintain. Durable backup built-in. Fast reliable CDN built-in.
I have a Synology NAS and it has a Photos app that is essentially a Google photos clone. It has face recognition, tags, albums, auto backup from phone, etc.
Works pretty well, although I wasn't seeking it out or researching other options
+1 syncthing too. Over the years it has gotten rock solid for me. I use it between all my machines and phone. With various 1 to many, 1 to 1 and one way or two way sync.
One of my machine is always on and is backuped to the cloud everyday. Effectively making a backup of all my devices at once.
Better yet, since syncthing can also save staggered copies of modified files, a rm -rf * will be synced but the backup machine will still have copy from about 10s ago. This saved me a few times.
Once I realized that I had deleted a file a few months later. And I found it into the syncthing backup, itself within the cloud backup.
I just finished setting up an automated backup system with syncthing and restic, and now my phone, laptop, desktop and server are all backed up in several directions and to a cloud storage area, every night. It's glorious and works like a dream. Happy days!
I would be very careful when setting up any kind of replication on backup repositories. I much prefer to actually backup to multiple destination, since when replicating, any error will propagate to the synchronized repositories as well, rendering all of the equally useless.
Great advice thanks - I have taken some steps to mitigate that (snapshotting, and a manual weekly USB backup) but you're right, this is an area I should look at more closely.
And to avoid mishaps, you can also set the phone side to be send only.
Do remember that as you delete photos on your phone to save space, it will delete them on the PC. You would need the PC side to move the photos to a different directory (a cronjob would do).
Yep, backing up phones (without using cloud, if you don't trust it, and I don't) is a pain... syncthing solves this, by syncing all the photos (and other files you want/need) onto a pc/server, that you can then back up using other solutions.
I wonder if these services will ever reach mass adoption.
I consider myself to be technological advanced, but other than niche photographer, i wonder if 99.99 % of population would ever go through the effort of setting such a service ?
I dream of selling a Box that plugs into the wall that backs up all of your photos and videos and maybe acts as an ActivityPub server, and you can add your friends who also have a Box, and your friends' Boxes back up all of your photos and vice versa.
The added benefit of integrating federated social media is that if you want to share a file with your friends, there's zero load time because the file is already backed up on their Box, or it's striped across multiple Boxes and downloads quickly.
It would have to be dirt cheap though, like a Chromecast.
Honestly I think Apple has a good model for this. The value would be in making the box plug-and-play. Apple has proven people will pay a premium for devices that Just Work. It could still be built on open software. Some kind of a cross between Apple’s opinionated approach to defaults and RedHat’s pay-for-support model of developing open source software.
They used to have the AirPort which was pretty much iCloud at home. And the early iPod was intended to be a portable personal profile you could plug in to any Mac. We’re not on the best timeline.
Okay, crazy idea. What if you didn't even need a piece of hardware and the service included online storage? It would simplify it even more for the end user so they didn't have to plug in hardware and maintain it. We could call this service something like eOnlineStorage or iBackupPhotos, maybe charge a varying price up to $9.99 a month for it.
Box would be a one-time purchase. There's no maintenance involved - if it breaks, you just buy a new one and log in, and redownload all of your data from your friends.
The problem being solved here is data locality. This idea predates the TV show by literally decades.
Apple doesn’t want to sell us a box. They want to sell us a subscription. My assertion is that Apple’s model of selling hardware would work for home servers.
I repeat myself: focus your mind on the value, or the problem the customer is looking to solve. Data locality isn’t a problem, it’s an implementation choice or detail.
The problem is something like: “I need to keep my family photos/files safe” or “I need to store customer orders and data” or “I need a way to protect my data when I drop my phone in the toilet.”
Even giant companies with eye-watering IT budgets see the appeal of having someone else manage their physical hardware and software infrastructure.. I haven’t worked at a company that owned its own servers in nearly a decade.
Apple doesn’t want to sell us a box and coincidentally nobody wants to buy a box.
Home hosting protects from institutional threats like governments, TLAs, and LEO. Cloud providers can’t offer that. They’re a huge target and it’s an open secret they are compromised. Apple even tried to pitch that as a feature. And they’re the leaders in privacy!
It’s easy to reason about data locality. I can have a literal social network of just my actual friends and no tech company gets to spy on it.
Cloud backups are still good for disaster recovery if they are fully encrypted.
Wow! Those institutional threats sound pretty sophisticated. I’m sure the average self-hosting solution is prepared for adversaries like that, and when agents come knocking on my door I’ll just tell them “no hard drives here!”
You know, with such a scary and complex network of online adversaries and government agencies, I wonder if I could pay someone else to manage that risk for me. My business is selling online greeting cards for pets and I don’t really specialize in network security and data protection.
Because nobody outside of HN is going to install software on an old phone or laptop. But they'll buy a $30 Box.
By all means the software will be open-source (and mostly off-the-shelf if possible) so anyone can install it on whatever device they have, but the killer product will be the Box.
I use synology myself, don't have experience with qnap but I think it will be pretty similar. plug the box, activate the service, download the phone app and your photos are automatically synced and browsable from the device. You can add other services but the basic functionality is there.
This doesn’t answer your question directly but iCloud is definitely not the way. Not only it’s unreliable and unusable largely, it is also designed in a way that discourage interoperability.
On Mac (I am aware you have said Windows) So if I were you I’d just dump app the photos locally in normal folder hierarchies (yes drag and drop; not going hunting in Library folder) and then backup wherever you want them. Here’s something https://support.apple.com/en-in/HT205323. Googled it. Absolutely no idea whether it works or how.
Then put something like Dropbox on the job on iOS and it’ll keep uploading your pics and videos which will show up inside one folder on your Windows as well.
My point is — you can’t rely on iCloud after you setup your backup up sync strategy. So get all your data at one point then start your parallel backup/sync setup (and maybe leave iCloud on as well if price is not a concern).
I use https://github.com/icloud-photos-downloader/icloud_photos_do... running on my NAS to regularly download photos from my wife's iCloud account. The photos are stored in full resolution on iCloud with the EXIF data, unlike Google Photos, so that's nice. The only annoyance is that you need to reauthorize the tool every three months. But it sends you a reminder when the time is coming up.
Beware that edits, portraits and some custom photo modes aren't currently downloaded. And modifying an edit twice or more will not sync. (no modtime or chksum)
I was able to backup my iPhone photos (stored on device) to Window using Dokany, ifuse and rclone. This have one caveat though: if you are using iCloud, some of your photos are actually stored as low resolution copies of the original to save space on your device, so original will be not backed up.
I use the File Explorer Pro App on iPhones and iPads to occasionaly backup all the albums to a NAS. It also has many other useful features i use from time to time.
Something is absolutely unavailable on iOS. All these other apps I’ve tried just don’t work. I think it’s that mobile operating system’s problem. Probably the devs don’t want to play a game that they know is rigged.
I found that SyncThing is not a great solution for the "mobile photo reel" use case. I want my entire photo collection to be easily searchable & accessible from my mobile device, but I don't need a complete copy of my photo reel to be saved to my device. I want to be able to delete things from my phone to free up space, but I want them to still exist in my photo collection that is backed up to the cloud.
I have the same need... I use Nextcloud for many things (including photo upload) but I can't stand their photos app. I use photoprism for the photos app and I love it.
I just have the same directory mounted to both my Nextcloud & Photoprism containers. They both operate with a normal directory of files on the file system, so I just have them both use the same directory to store data.
Syncthing + Tailscale. I have it set to only accept syncs from the tailscale addresses. I use this to do voice recordings that fairly quickly sync home for records of conversations.
I'm unclear if Syncthing inherently encrypts transfers, but layering it within Tailscale would add that. No?
> All device to device traffic is protected by TLS. To prevent uninvited devices from joining a cluster, the certificate fingerprint of each device is compared to a preset list of acceptable devices at connection establishment.
So yeah, transport is encrypted. I do believe they need to put that fact front and center, though. It took me a few minutes to find out. (Thanks for making me find out, though! I use Syncthing heavily and it never occurred to me to even question this.)
Thanks for finding that. I had the impression syncthing was focused on efficiency only, and not necessarily privacy/encryption. I had the impression a synced copy would be rebuilt from several sources at once, over the syncthing discovery protocol - and may not be encrypted in transit.
I'm using Synology Photos, have no complaints. Its really a good starter when decoupling from google photos, removing all subscription and taking control of my own data with expandable raid storage
+1 to this. I actually use both - Google photos for utility / sharing and Synology Photos for backup. It's good, easy to setup on both my device and my wife's.
> Do not use the app as the only way to store your photos and videos!
You shook not have only one backup ever. But this project says this in the context of not being production ready. So at least I won’t play with it with my personal photos and videos.
I LOVE Immich. Been using it for a few months now, first on a Raspberry Pi 4 and then an old x86 box. Before Immich I had tried for a while to use Photoprism with Syncthing to sync photos from my phone, but the transition to that from Google Photos was a frustrating one.
Immich on the other hand expressly tries to be a Google Photos replacement, and while I initially thought that was an audacious goal for a fresh open source project to have, I have been pleasantly surprised by how feature-rich it has become in a short amount of time.
I know the developer makes it very clear that it's not stable yet, so I'm making sure I back up everything from my server at regular intervals. But I've found it to be more and more stable with new releases, so hopefully a first stable release is not far away.
Can I ask what specifically you like about it over Photprism? Just the sync?
I've also been questing for a Google Photos replacement, and right now Nextcloud functions admirably for auto-sync but like garbage for anything past that like viewing albums afterwards. I've had an instance of Photoprism up for a while and was debating bringing it into "production" on my homelab.
The biggest one was that Photoprism doesn't have a mobile app. It seems a lot of people use PhotoSync (a third party app) to back up to a PhotoPrism instance, but I didn't even want to give it a shot considering they don't offer the premium features on Android. Immich on the other hand has apps that are developed together with the server and web UI, so everything is well-integrated.
with termux on android and an openvpn tunnel to my own stuff, it's quite fast and effective to use rsync to mirror the entire contents of the DCIM folder and other folders where images are stored. I just have to remember to run the backup job periodically, which I could almost certainly automate if I really put more time into it.
when I'm on the same LAN as my backup destination and on a 802.11ac 2x2 80 MHz channel AP, it's shockingly fast, whatever is the max real world speed of my wireless connection, somewhere around 40-50MB per second to do the sync.
People have mentioned SyncThing and Seafile as straight backup options.
Another option one could consider is FolderSync[1]. It has a number of cloud back-ends it can interface with, but I use it to periodically SFTP to my home server to backup several areas in my phone, including photos, camera and app backups.
Two niceties for me it has:
* Two-way sync. I'll often clean up my camera roll on my PC, and that syncs back to the phone.
* Only attempts to connect to me home server if it is on my home wi-fi.
I would also vote for FolderSync. I run seafile and nextcloud for other purposes, but have settled using FolderSync for phone --> NAS nightly backups and it is slick. I've been using Photoview to view backed up photos locally.
Putting my hat in this ring, too. I do a write-only sync of pictures from my phone to my NAS (upload new files and leave them on the phone - I prefer one way sync), and a mailbox-style sync of Signal backups (Signal can be configured to drop a backup file into a specified folder; I've configured FolderSync to upload whatever it finds there weekly and delete the backup locally). Finally, I do a two-way sync of my personal notes text file.
I don't have a good situation figured out for browsing unsorted uploaded photos, and I find that this is fine for my usage. I put a curated set of personal albums on a password protected personal site for friends and family. I enjoy the role of family chronicler.
My NAS is backed up via daily snapshot to a remote location.
Finally. I thought I was crazy having to read through so many comments on here before someone mentioned just a simple SFTP to a backup server. FolderSync is the way to go.
350 comments
[ 3.5 ms ] story [ 293 ms ] thread> Expect bugs and breaking changes.
I get it's the pretty normal to go through fixing bugs, but for a backup solution the core of it should be stable or I would not use it
Just a few weeks ago, facial recognition was added and that was it for me. I finally made the switch from Google Photos and iCloud to immich. It's your self-hosted google photos alternative, with image recognition, a map, sharing folders publicly, or with other users on your server.
Some parts will be buggy though, like face detection, or memories. But the whole "backup & sync" part is very reliable, I've never had any issues.
Frankly, I have had issues with Google Photos already. For me, it simply stopped recognizing faces since last October. I tried disabling and then enabling face recognition multiple times, but to no avail. It starts recognition from scratch, but only for photos before October. Writing to the support didn't help (although I didn't expect it to anyway), so alternatives like this one are becoming more and more tempting.
I'm already self-hosting a bunch of things, but facial recognition (when it was working) was much better in Google Photos and a major reason why I'm paying for additional storage.
From what I can tell, Immich, Ente, and PhotoPrism are the best of the batch when it comes to open source photo storage and management. They are all good, but it depends on what you’re looking for.
Personally, I want: E2E encryption, on-device face recognition, and the ability to self-host as well as a paid option for people who don’t want to manage their own server. The existing options each hit about 90% of that, but it’s a different 90% for each one.
Even though I totally believe that the current set of hashes really does represent truly horrible stuff, I also suspect that it will expand over time to include anything that threatens those in power. In other words: they are coming for your Bernie memes.
So I would like to have a more secure option that doesn’t depend on the whims of the powerful to decide which images I’m allowed to own.
It might have all those good features, but it lacks a practical user experience.
In other words, I think the E2EE is the bigger lift, and the photo stuff is the easier piece to re-implement.
It’s explicitly saying it’s not a backup solution.
I guess it needs a better description, IMO a project with several big components (web, mobile, backend) sells itself short being named just "backup solution".
[1] https://immich.app/docs/overview/introduction
Picasa had face recognition, basic editing, and a bunch of sorting features and ran on computers that had something like 1/50th the CPU performance.
Meanwhile modern replacements like DigiKam, Lightroom, ON1, and so on are incredibly bloated with very slow UI response even on a very powerful desktop PC.
Although Immich does at least work well, the webUI is extremely fast and loads images instantly.
I do with they had OSS'ed the code for at least the desktop app, but maybe there were licensing issues? or just no one cared.
Darktable and ON1 feel decent snappy on my ~8 year old Desktop PC.
Though it was a looong time since I last tried Picasa.
I just watched a video of Picasa to jog my memory. It seems similar snappy as ON1 with 24 megapixel raw images on my 2015 PC.
https://i.imgur.com/bEtHO9T.png
So you can search for "fish" for example and it will show photos of fish.
And apparently it has facial recognition, so you can find photos of a specific person by name.
These are killer features of Google photos for me, so it is exciting to see them in a self hosted, open source offering.
There is a demo linked on the GitHub page that I checked out:
https://demo.immich.app/
Immich also does use CLIP to cluster similar faces and so on. Not only that, geotagging, camera details etc.
- Upload via the webUI
- Import a folder of photos on the host (copies photos to the Immich directory)
- Add a folder of photos on the host (leaves photos in place)
I mean I guess sending emails is relatively easy, but doing that for every photo you want to keep — for 20 years — sounds like a ton of manual effort.
I have always failed to see the appeal of a cloud solution.
Whenever I arrive at home, I immediately move all the new photos from my mobile phone to my computer. This costs nothing, except a few seconds of my time and it is perfectly secure.
I prefer to not keep any personal information on a mobile phone, except the mandatory list of contacts.
Auto share photos of a certain face to an album that is shared with a group. Group is notified when new photos are added.
This is CLUTCH for new parents.
That being said, this is incredible and I’m definitely moving over the first chance I get.
My wife and I each have a separate Apple Photos library. I'd love it if we could have a combined backup solution.
Could we keep using Photos and back up to this, or would it be better to ditch Photos and just switch over?
1) Anyone try Backblaze for photo backups? Is it worth trying?
2) Why is immich photo and video only?
3) Why docker? I miss the days of just files and scripts on any host.
2) It's a replacement for google photos.
3) Ease of use and flexibility, you can deploy a docker compose file easily on any host or distro without needing to deal with dependencies or OS specific glitches.
Yes, happy customer for many years. Restored ~2GB of photos when a MacBook Pro motherboard completely died about 18 months ago.
To your third point, I scratched my head and looked suspiciously at Docker from a distance for years, but since I've started playing with it, I absolutely love it and would not go back. Every dependency that you need is wrapped up in a single image, so installing the application is as simple as pulling the image and booting up a container from it; no worries about conflicts with other services, broken or conflicting dependencies, or breaking something later on when you make other changes. Don't like the exact installation and want to make your own? Make or modify a dockerfile, and build a new image. Want to upgrade? Just destroy the container and create a new one with the updated version - all your data, config files, etc. are (or should be!) in separate volumes from the container itself so you lose nothing, and in fact you can easily experiment with different releases, or rollback if something goes wrong. For myself, I treat all my containers as ephemeral and always recreate them whenever I restart them - it costs nothing and I know that the system is easily reproducible. Speaking of volumes, backups are a breeze - all my Docker volumes are just subdirectories of /docker/volumes so all I have to do is back that up every night and I've got a complete copy that I can instantly restore (or clone!). It really is incredibly convenient.
Personally I'm looking forward to when this is included in Nix so I get a ephemeral/reproducible install that doesn't add a second copy of both postgres and ngingx.
Ahh yes, the ol. piping code from the internet into a root shell
For example, here is an issue where a raspberry pi 4 is used. https://github.com/immich-app/immich/issues/611
Looks relatively straightforward to get running, pretty much inline with what I had to do in order to get PhotoPrism running in the first place. Only thing I couldn't see anything about was hardware acceleration, do leverage any of the Intel instructions (VAAPI) for transcoding? That's a paid feature on PhotoPrism and something that's sorely needed. CPU bound transcoding is terrible!
Think I'll put this on the TODO list for the weekend!
[1]https://www.photoprism.app/ [2]https://www.photosync-app.com/home
Getting rid of all of the Google dependencies in my life is... Ugly. I would really like to still trust Google. I just can't anymore.
I agree though. It's a shame how iOS is completely crippling background apps.
I'm hoping for an alternative for Google Photos and I'm paying for ente.io. It works fine on Android, but background sync doesn't work on iOS. So for me personally it is not ready to replace Google Photos. If it can't be set and forget for non-technical family members it's not going to cut it.
Thanks for pointing out the workaround with GPS, will look into it!
Currently on iOS, our servers send silent pushes to your device every hour. This wakes up the app and gives us 30 seconds to execute a background sync (provided you've previously not killed the app). This is not sufficient to backup videos, but it works pretty well for incremental backup of photos (I personally use an iPhone).
> This wakes up the app and gives us 30 seconds to execute a background sync (provided you've previously not killed the app).
I wonder if this is the crux of the matter. It doesn't work when the app hasn't been started in the first place, right? I don't know how Google Photos does it, but I'm pretty sure they have solved syncing without having to remember to open the app. I half wonder whether they achieve this by showing constant notifications about "look what happened x years ago" or "look at this new collage" that gets people to click on it and actually start the app.
Didn't use the "rolling trashbin" feature yet but need to look into that
https://apps.apple.com/us/app/m%C3%B6bius-sync/id1539203216
If this app can do background sync of the camera roll directly from iOS to an Android device in one step I may switch to it and stop using both Mobius Sync and Photosync.
While I'm sure this is probably true, the number of features Apple is depriving us from due to alleged "security reasons" is baffling.
It's a general excuse among firms that want to keep their monopoly and walled garden (OpenAI does the same).
Having a separate API for photo access is annoying while developing this use case, but it's appropriate for a couple different reasons: for one, if apps could access the raw files, that could reveal metadata like location. For another, filesystem access wouldn't properly handle cloud-synced photo libraries.
Perhaps photos on iOS are persisted into some sqlite-style database on the device rather than as individual files...
The Dropbox iOS app would be a good example here. It acts as a ReplicatedFileProvider so apps on the device can access your Dropbox files, but it also provides an optional config flow where users can ask for their photos to be backed up. Then, the Dropbox app fetches the photos through PhotoKit and writes the .JPEGs or .HEICs to a folder of your choosing into your Dropbox files.
If you don't use the photos app, you can keep them all in the files app and it syncs just fine. Annoying to use since the files app is nowhere near as nice for photo browsing/management.
I want an easier way to edit the comments on photos (as embedded metadata) that I haven't found yet. Any image browser where I can hit a convenient hotkey, type "Summer 2023 at the river with cousins X and Y" and move on would be great. If anyone has a suggestion I'm listening keenly! If this is built in to something on MacOS or a linux default desktop (like KDE or something I'm less familiar with), or is a small paid non-subscription app, I would buy it.
[1] https://photostructure.com/
When I take a picture with my phone, it automatically gets backed up to iCloud, Google Photos, OneDrive, and Amazon Photos (free with prime).
When I had a personal computer, photos would sync to my computer and get backed up to BackBlaze also.
And on the Mac Apple engineers have made sure the photos are not synced in a simple easy folder hierarchy that can be backed up elsewhere.
Google Photos just works.
If you delete a photo on your phone, does it automatically get deleted from all those services in near-realtime?
Do you have an archive solution in place (distinct from your lack of a backup solution)?
I have 2TB on iCloud, 2TB on Google Drive, unlimited back up of photos on Amazon Drive and 1TB on OneDrive. When my OneDrive account gives out of space, I’ll just use one of the other 6 accounts that come with an Office 365 subscription.
I guess for an archive solution, I would use my personal AWS account that’s only used to store my videos that fell off the back of a truck once I took my Plex server off line.
I have 2TB of videos stored in AWS S3 Deep Glacier archive. I’m charged like $2 a month for it.
Here's a hypothetical - imagine you deleted a photo from your phone, and then modified (in place) a different photo.
Is your expectation that the first would be deleted from the various places you have it backed-up? (If not, then what's your process for fully destroying a photo?)
Would the second be propagated to each of your SaaS storage providers overwriting the existing, or renamed and situated adjacent to the original? And if you modified it in-place a second time?
If your phone were then to stop working and needed replacing, would the restoration process restore your phone to before, or after, the above deletions / changes were made? ie. would the deleted photo exist on your phone, would the second photo be pre, mid, or post modifications?
(I draw the distinction between backups and archives whereby backups get you to where you were most recently (pre incident), and archives let you restore to something like 'Tuesday afternoon, two weeks ago'. I'm talking here purely about backups vs sync though.)
OneDrive - I have an Office365 subscription
Amazon Photos - free with Amazon Prime
Google Drive - inertia and it still has the best search. I had it when it was free, unlimited storage
So you have no backup.
Everything else is in Immich
Pictures and videos I take get backed up to Google Photos
Once a year I do a Google Takeout and import into Immich
This way I get the best of both worlds
With AWSPics, sync your photos (just a simple directory tree on your local device) to S3 (I just do it manually from time to time from my desktop, but no doubt it can be done automatically at regular intervals, and/or it can be done directly from a phone), then Lambda functions generate thumbnails and browsable galleries (as static HTML), then you can view it all via CloudFront (password-protected using Origin Access Identity).
AWSPics isn't really being actively maintained these days. But it still works fine for me. The setup is cheap, you basically just pay for the S3 storage (currently costing me a bit under $1/month - and I guess you could use a cheaper S3-compatible alternative like Backblaze and reduce your costs further). No server to set up or maintain. Durable backup built-in. Fast reliable CDN built-in.
Sadly I've not found a self-hosted like-for-like replacement. My photos now move from my phone to a folder that's backed up to s3 via Restic [2].
[1]: https://www.forbes.com/sites/thomasbrewster/2020/02/04/googl...
[2]: https://restic.net/
Works pretty well, although I wasn't seeking it out or researching other options
One of my machine is always on and is backuped to the cloud everyday. Effectively making a backup of all my devices at once.
Better yet, since syncthing can also save staggered copies of modified files, a rm -rf * will be synced but the backup machine will still have copy from about 10s ago. This saved me a few times.
Once I realized that I had deleted a file a few months later. And I found it into the syncthing backup, itself within the cloud backup.
Very freeing.
Do remember that as you delete photos on your phone to save space, it will delete them on the PC. You would need the PC side to move the photos to a different directory (a cronjob would do).
I consider myself to be technological advanced, but other than niche photographer, i wonder if 99.99 % of population would ever go through the effort of setting such a service ?
The added benefit of integrating federated social media is that if you want to share a file with your friends, there's zero load time because the file is already backed up on their Box, or it's striped across multiple Boxes and downloads quickly.
It would have to be dirt cheap though, like a Chromecast.
What is the problem being solved here? Apple already offers a solution – iCloud.
Why would they want to sell you a box for offline backups?
Apple doesn’t want to sell us a box. They want to sell us a subscription. My assertion is that Apple’s model of selling hardware would work for home servers.
The problem is something like: “I need to keep my family photos/files safe” or “I need to store customer orders and data” or “I need a way to protect my data when I drop my phone in the toilet.”
Even giant companies with eye-watering IT budgets see the appeal of having someone else manage their physical hardware and software infrastructure.. I haven’t worked at a company that owned its own servers in nearly a decade.
Apple doesn’t want to sell us a box and coincidentally nobody wants to buy a box.
It’s easy to reason about data locality. I can have a literal social network of just my actual friends and no tech company gets to spy on it.
Cloud backups are still good for disaster recovery if they are fully encrypted.
You know, with such a scary and complex network of online adversaries and government agencies, I wonder if I could pay someone else to manage that risk for me. My business is selling online greeting cards for pets and I don’t really specialize in network security and data protection.
By all means the software will be open-source (and mostly off-the-shelf if possible) so anyone can install it on whatever device they have, but the killer product will be the Box.
How do you figure?
Also you may be interested in checking out https://kubesail.com/homepage and https://privaterouter.com/
I use synology myself, don't have experience with qnap but I think it will be pretty similar. plug the box, activate the service, download the phone app and your photos are automatically synced and browsable from the device. You can add other services but the basic functionality is there.
Or the internet cube (https://internetcu.be/) ?
On Mac (I am aware you have said Windows) So if I were you I’d just dump app the photos locally in normal folder hierarchies (yes drag and drop; not going hunting in Library folder) and then backup wherever you want them. Here’s something https://support.apple.com/en-in/HT205323. Googled it. Absolutely no idea whether it works or how.
Then put something like Dropbox on the job on iOS and it’ll keep uploading your pics and videos which will show up inside one folder on your Windows as well.
My point is — you can’t rely on iCloud after you setup your backup up sync strategy. So get all your data at one point then start your parallel backup/sync setup (and maybe leave iCloud on as well if price is not a concern).
- Go to https://privacy.apple.com - Choose "Request a copy of your data" - Select iCloud Photos
After a few days you'll receive a download link to the full iCloud Photos library. Perhaps only available in EU (it's a GDPR-mandated feature).
https://apps.apple.com/us/app/fe-file-explorer-pro/id4994701...
this resonates with me.
what solution are you using?
By the way, how do you share files between Nextcloud and Photoprism? It's my biggest problem with NC, it's hard to share files with other apps.
I'm unclear if Syncthing inherently encrypts transfers, but layering it within Tailscale would add that. No?
> All device to device traffic is protected by TLS. To prevent uninvited devices from joining a cluster, the certificate fingerprint of each device is compared to a preset list of acceptable devices at connection establishment.
So yeah, transport is encrypted. I do believe they need to put that fact front and center, though. It took me a few minutes to find out. (Thanks for making me find out, though! I use Syncthing heavily and it never occurred to me to even question this.)
I can rest easy :)
I've spent too much time setting up fun docker instances on it instead
You shook not have only one backup ever. But this project says this in the context of not being production ready. So at least I won’t play with it with my personal photos and videos.
Immich on the other hand expressly tries to be a Google Photos replacement, and while I initially thought that was an audacious goal for a fresh open source project to have, I have been pleasantly surprised by how feature-rich it has become in a short amount of time.
I know the developer makes it very clear that it's not stable yet, so I'm making sure I back up everything from my server at regular intervals. But I've found it to be more and more stable with new releases, so hopefully a first stable release is not far away.
I've also been questing for a Google Photos replacement, and right now Nextcloud functions admirably for auto-sync but like garbage for anything past that like viewing albums afterwards. I've had an instance of Photoprism up for a while and was debating bringing it into "production" on my homelab.
when I'm on the same LAN as my backup destination and on a 802.11ac 2x2 80 MHz channel AP, it's shockingly fast, whatever is the max real world speed of my wireless connection, somewhere around 40-50MB per second to do the sync.
https://demo.immich.app/auth/login
Demo instances need to have really short reset periods - minutes or so, or alternatively disable password changes.
Another option one could consider is FolderSync[1]. It has a number of cloud back-ends it can interface with, but I use it to periodically SFTP to my home server to backup several areas in my phone, including photos, camera and app backups.
Two niceties for me it has:
* Two-way sync. I'll often clean up my camera roll on my PC, and that syncs back to the phone.
* Only attempts to connect to me home server if it is on my home wi-fi.
[1] https://play.google.com/store/apps/details?id=dk.tacit.andro...
I don't have a good situation figured out for browsing unsorted uploaded photos, and I find that this is fine for my usage. I put a curated set of personal albums on a password protected personal site for friends and family. I enjoy the role of family chronicler.
My NAS is backed up via daily snapshot to a remote location.
YMMV!