Skip to content
Greffon
Tutorial

Self-Host Immich with Greffon: Your Own Google Photos

Your photo library is a record of your life, and it currently lives on someone else's servers. Immich brings it home. Here is the honest setup, including the parts that ask for real hardware.

GLGreffon Labs6 min read
~/blog/self-host-immich

A photo library is one of the most personal things you own, and for most people it sits entirely inside Google Photos or iCloud. Immich is the self-hosted alternative: phone auto-backup, search, albums, shared libraries, on a server you control. Grafting it onto a greffer keeps every photo and video on your hardware.

Why own your photos

Immich is a self-hosted photo and video backup that aims to feel like Google Photos: a mobile app that backs up automatically, a timeline, people and place search, and shared albums. The difference is where the originals live. With Immich on your greffer, they live on your disk, and the search index is built on your machine, not a provider's.

Graft it from the catalog

Pick Immich from the catalog and graft it onto your greffer. Greffon issues the certificate and routes the app, so the web UI and the mobile app connect over HTTPS from the first start, with no reverse-proxy assembly on your part.

Reach it from your phone

Auto-backup only works if your phone can reach the server from anywhere, not just at home. On your own network it works immediately. From outside, tunnel mode lets the greffer connect out and serve Immich with no inbound ports, which is the simplest path for a box behind NAT. Port forwarding plus dynamic DNS works too if you prefer to expose it directly. Either way the mobile app talks to your server over HTTPS.

The storage and memory it actually wants

This is the honest part. Photos and especially video are large, so plan disk around your real library size plus headroom, and treat storage as the thing you will add to over time. Immich also does on-device-style machine learning on the server for search and faces, which wants real memory and CPU. It will run on a modest box, but a tiny always-free ARM instance can feel slow during the first big import and while the ML catches up.

Right-size before the first import
Point Immich at a greffer with comfortable disk and a couple of real CPU cores. The initial backup and machine-learning pass are the heaviest moment; after that, day-to-day use is light.

Back it up first

Self-hosting your photos means you are now the one responsible for not losing them. Greffon handles TLS and routing today, and native one-click backups are coming in M2. Until then, bring your own backup tool (restic or borgbackup), back up the Immich data and database on a schedule, and keep a copy off the greffer.

A photo library with no backup is a single point of failure
Run the backup, then test a restore once, before you delete anything from Google Photos or iCloud. Self-hosting is worth it; an untested backup is not a safety net.

FAQ

Does the Immich mobile app do automatic backup?
Yes. The official Immich apps for iOS and Android back up new photos and videos automatically once you point them at your server URL and sign in.
Can I import my existing Google Photos library?
Yes. Export with Google Takeout and upload into Immich. Give the first import time, since the machine-learning pass for search and faces runs after the files land.
Will it run on a small server?
It runs, but photos and video want disk and the search/faces features want memory. A small always-on box is fine for a modest library; a large library rewards more storage and a couple of real CPU cores.
GL
Greffon Labs
We build Greffon, the simplest way to turn any machine into a server you own.

Ready to turn on your greffer?

Install in minutes. Deploy each app in seconds. Your server, your apps.

Read the docs