[Immich] What is the "proper" way to navigate migration from another service (all photos are already on the server)

I got immich with SSO up and running. It runs like a dream compared to Photoprism and is simple enough for me, but also has necessary features like user accounts.

There is one thing I couldn’t find in the docs:

I already have a library of 5000 photos and 150 videos on my server that sync to my phone with Syncthing to 4 different directories (one for each phone I took the photos on) in Immich. Right now I have that directory as an external library, but I don’t think this is the “right way.”

My goal:

  • No duplicates between phone app and desktop app
  • Don’t have to re-upload every image from my phone as my network is 100/30 mbps
  • Am able to manage my photos from the Immich app and web app (deleting photos that will propagate between devices)

Can I just map the “Upload” folder to that syncthing photo base folder and get parity between my phone and my server? Or do I have to re-upload everything from my phone? Or am I waiting for a feature that doesn’t quite exist yet? I noticed some feature discussions about photo hashing and de-duplication.

I tried asking in a discussion on the repo, but nobody answers those much.

lal309,

This is the only thing keeping me from moving everything from PhotoPrism to Immich. I have over 40,000 objects (photos and videos) on my server already. If I could somehow get immich up and going on and have immich “recognize” this giant directory of objects without having to reupload everything, I would switch tonight.

Atemu,
@Atemu@lemmy.ml avatar

Don’t have to re-upload every image from my phone as my network is 100/30 mbps

Is your immich server in a different network? But your photos are already on that server, right?

JustEnoughDucks,
@JustEnoughDucks@feddit.nl avatar

Runs through my reverse proxy, so technically yes? The photos are indeed on the server through syncthing

Atemu,
@Atemu@lemmy.ml avatar

Reverse proxy can mean different things in different contexts. What kind are we talking?

JustEnoughDucks,
@JustEnoughDucks@feddit.nl avatar

Right now, most services are running via traefik with authelia over it. I haven’t done the work of making traefik able to route from local ip addresses without the hostname and I have no idea if my ISP router does NAT hairpinning.

Some services I have only or also local without traefik or authelia, depending on the service.

In this case immich is running completely through the reverse proxy, through a cloudflare proxy with whitelisted IPs.

sabreW4K3,
@sabreW4K3@lemmy.tf avatar

When I was getting ready to install Immich, I’m pretty sure one of the YouTube videos just copied a folder across and Immich found everything

marsara9, (edited )
@marsara9@lemmy.world avatar

A couple of options in my opinion, as I just did this myself:

You can use the CLI tool to “upload” them. You can even do this from the server itself. So upload times would be as fast as your network card can process or however fast your server is, whichever is slower. It does require that you create an API key for the user in question though.

Otherwise you can create an external library and link that to your account. Now Immich will still index this library but it won’t move or manage the actual files. I’m not sure though if it looks at those files for duplicates (i.e. if you try and upload the same photo from your phone to the server). This external library will also prevent deleting photos as well, FYI.

There might be other options that I’m not aware of, as I’ve only been using Immich for about a month now.

Edit: link to the CLI documentation: immich.app/docs/features/command-line-interface/

tehnomad,

I migrated using the CLI tool to upload before external libraries came out, and it worked well for me. I think I would have preferred to use external libraries for things like my wedding photos, so there aren’t duplicates on my server, but it’s not a big deal.

  • All
  • Subscribed
  • Moderated
  • Favorites
  • selfhosted@lemmy.world
  • tacticalgear
  • DreamBathrooms
  • everett
  • magazineikmin
  • osvaldo12
  • InstantRegret
  • Youngstown
  • mdbf
  • slotface
  • rosin
  • thenastyranch
  • kavyap
  • khanakhh
  • cisconetworking
  • JUstTest
  • Durango
  • GTA5RPClips
  • ethstaker
  • provamag3
  • ngwrru68w68
  • normalnudes
  • cubers
  • tester
  • modclub
  • megavids
  • anitta
  • Leos
  • lostlight
  • All magazines