immich, DIY Google Photos (but better)

Illustration of a bird flying.

I recently heard about Immich over at Reddit and was thinking of using it to replace Google Photos. Even though I had the unlimited uploads on their pixel series devices, it became increasingly more tiresome to have to transfer my photos manually. Mainly because Syncthing and Apple’s aggressive battery saving methods tend to prevent it from syncing at all.

Besides that, I was also getting more and more interested into self hosting. I already got home assistant setup and was getting excited with the stuff I could do. The problem with hosting Immich is that my internet is slow, like proper slow. Talk 10Mbps up and down, with some added latency because I’m using those Ubiquiti Litebeam radios. So if I’m travelling it’ll cause my uploads to be disastrously slow.

In light of that I decided to set it up on my vm, it’s a pretty sweet deal 24 gigs of ram, 200gb storage and 4 cores. All for the low cost of nothing, drawbacks: its arm but honestly doesn’t matter for my use case. Besides most if not all of my docker containers have a build for arm.

In addition to that I got a hetzner storage box, mounted it up using rclone which was super easy to setup except for the systemd daemon for it to start automatically at boot. After that, it was just a matter of adding my configuration to the .env file and it was as simple as a “docker compose up -d”.

After getting that setup, I requested a takeout of all my photos from google and used immich-go. Three days later, we have all our photos uploaded into immich. But here is where we reach our first issue…

Roadblock No. 1

As beautiful as immich-go was, for some reason it was was having issues dealing with the scale of my photos of 70k photos (thanks to the free uploads from my pixel) so at certain points the tool would just give up and fail the uploads.

The only workaround I had for this was that I kept on running the tool until the reported statistics in immich matched the amount of photos I had in Google Photos. I’m pretty sure that issue got fixed as this was back in sub 2024.

Roadblock No. 2

Viewing photos took minutes to load which basically beats the purpose of a photo manager, this was honestly my fault though because these Hetzner storage boxes are mainly meant for backups and aren’t known for their speed.

Luckily there was a way to fix this, for immich to function it uses 5 folders: “backups,  encoded-video,  library,  profile,  thumbs’  upload”. Currently all of these folders were being stored on the storage box. Immich allows you to set the path of any of these folders using the docker compose file and the .env file. I set the thumbnail folder to be stored locally on my VM’s ssd and let immich regenerate the photos.

And after that photos loaded almost instantly, so problem solved.

Done with the Roadblocks, back to the pretty stuff.

Okay this is where it gets fun (at least I think so). After getting myself accustomed to immich I went on a month long mission to fully convert all my self hosted services to use SSO.

For this I used Authentik which is honestly such a godsend as it’s just awesome, sure it’s not perfect. It’s not as fast as I’d like it to be and it requires a lot of tweaking (but isn’t that any enterprise software though?).

Eventually I made it work and I couldn’t be any prouder. Now if you visit it, immich automatically redirects you to authentik with this super sweet loading screen. One more reason why I chose authentik is because of it’s aesthetic, I care deeply about how software looks and could not deal with Authelia’s plain UI.

Stage 1
Stage 2 ft. the Melbourne skyline 🙂

So yeah that’s my setup, it’s honestly miles better than your standard Google Photos. That is, if you’re willing to spend the time to maintain it. Don’t get me wrong, it’s super easy to setup but you should be willing to keep it maintained and just keeping an eye on it like you’d to do a toddler.

I’ve been running this for the past year and it gets the approval from the entire family – in fact my entire family stopped paying for cloud storage. Which is a bold move to trust me with their precious data, but hey I’m not complaining.

Last but not least, if you do plan on delving further into immich. Make sure you have all your files backed up, I can’t stress this further. As reliable as immich is, it is still beta software that is in constant development. You’d rather be safe than sorry.

– aaron


One response to “immich, DIY Google Photos (but better)”

Leave a Reply

Your email address will not be published. Required fields are marked *