Kdrive and PhotoPrism

Reading Time: 2 minutes
Yesterday I configured PhotoPrism to work with my iPhone photo album that was being synced to Infomaniak’s Kdrive, before then being synced to a drive that I could access via the Photoprism docker-compose config file. I then used No-ip to make that PhotoPrism instance available to the world wide web.

For several years I have had an Infomaniak Kdrive account but did not use it much, until I noticed that what costs 100 CHF with Google Drive costs 67 CHF with Kdrive. That’s a 34 CHF franc saving.

## Migrating Data from Google to Infomaniak

This is interesting because of two things. The first one is that you can easily migrate your Google Photos Albums to Kdrive, and from Kdrive to your local machine without having to spend hours doing so manually. I am in the process of migrating from Kdrive to my local drive, for my Google Takeout album but this is slow.

What worked well was telling Kdrive to download the iPhone photo album from the Kdrive cloud to my local machine. I then edited the docker-compose config file but it took some trial and error before I understood how it works. It’s simple.

## Telling PhotoPrism Where to Look

In my mind it should be “label: destination” but this is wrong. With Photoprism config files it is destination: label. To explain this more clearly:

> volumes:
> – “/mnt/photos:/photoprism/originals”
> – “/mnt/videos:/photoprism/originals/videos”

“mnt/photos” is the folder location and “photoprism/originals” is the label that docker and photoprism recognise. This is important because when you understand this you can set an external drive to be the photo gallery main drive, run index, and catalogue everything.

## Ingesting Photos and Videos

If you export your Google Photos albums via Google Takeout, you can unzip the 2 gigabyte files, and as they unzip the files and their related JSON files are all brought together. Tell PhotoPrism that the Google Takeout folder is the import folder. After this mark “move files once ingested” and press import. PhotoPrism will then ingest all those files, delete what has already been ingested, catalogue everything, and leave you with an organised folder of photos and videos.

The indexing stage is very fast but can still take time, depending on album size.

## The Next Step

There are two possible next steps. The first is to access this gallery from anywhere using tailscale, or using No-IP to access your photo album remotely. I recommend tailscale for this stage, because I haven’t seen much information about how secure PhotoPrism is so I’d rather not risk it.

I setup no-ip before telling my router about it and within a few minutes I had access to PhotoPrism and Nextcloud via No-Ip. I will write about that experiment tomorrow.

## And Finally

When you’re playing with linux, and experimentating with projects like PhotoPrism you need to take time to understand how they work, to adapt them to your use case. I did this. Now I can get PhotoPrism to behave as I want it to. Now I can use external hard drives, and index photos, without having to import them. Within minutes I can plug in a drive, tell PhotoPrism where to find it, index it, and then use it.

If it had two factor authentication and more security measures then I would consider having it on the cloud, but for now I’m happy to use it via Tailscale’s VPN, as this is more secure.