Self-Hosted PhotoPrism: AI Photo Search on the Files You Already Have

You already have 200 GB of photos on a NAS — folders named 2023-08-vacation and iphone-dump-march, half sorted, half chaos. Google Photos wants you to upload everything again. Immich wants you to treat the server like the primary backup target from your phone. What if you just want a gorgeous library on top of the files you already own?

PhotoPrism takes that approach. ~40k GitHub stars, AGPL community edition, AI-powered tagging and search, and a privacy-first mission that's been consistent for years: your pictures stay on your infrastructure, not in an ad-driven cloud.

What it actually does

PhotoPrism indexes photos and videos from folders you mount into the container — originals can live on a big HDD while thumbnails, cache, and MariaDB sit on SSD. It handles RAW files, common video formats, Live Photos, and metadata from Exif, XMP, and imports like Google Takeout.

Search that goes beyond filenames. Combine filters: labels, location, colour, resolution, quality, faces. Type "red sunset" or browse a map of where shots were taken. Automatic labeling and face recognition group people across years — you confirm names, PhotoPrism learns your family from there.

PWA, not a proprietary app store play. The web UI installs like a native app on phone or desktop home screen. For mobile backup, apps like PhotoSync can push to PhotoPrism in the background; WebDAV lets Finder or Windows Explorer treat the library like a network drive for open-edit-delete workflows.

Maps and trips. Geocoding and world maps help you relive vacations without sending coordinates to Google — PhotoPrism runs its own privacy-oriented geocoding for community edition users.

PhotoPrism vs Immich — which self-hosted photo stack?

We already covered Immich — excellent if you want Google Photos-style mobile auto-backup and a polished native app. Choose PhotoPrism when:

  • Your archive already lives in folders on disk or NAS and you want indexing, not migration to a new upload silo
  • RAW files, advanced search filters, and WebDAV matter more than partner-sharing UX parity with Google
  • You prefer a mature, self-funded project with a clear AGPL community edition and optional membership for extra map features

Choose Immich when phone-first backup and face/search ML in a mobile app rhythm matter most. Some households run both — Immich for daily phone dumps, PhotoPrism for the 15-year archive on spinning rust. That's ops-heavy; most pick one.

Why self-host?

No selling your family album. PhotoPrism's team is explicit: independent, self-funded, won't sell your data to big tech unless you deliberately upload elsewhere.

Canadian residency. Run the stack on a Canadian VPS with originals and database under your control — a straightforward PIPEDA narrative for personal or small-business archives.

Decentralized web angle. Host at home, on a private server, or in the cloud — same software, your rules. No subscription tier that deletes your history when you stop paying.

What running it takes

Docker Compose is the documented path — PhotoPrism plus MariaDB (or SQLite for tiny installs). Download the official compose.yaml from PhotoPrism's docs, set volume paths for originals and storage, pull and start.

Hardware: minimum 2 CPU cores, 3–4 GB RAM, 64-bit OS, and at least 4 GB swap. PhotoPrism warns against hard Docker memory limits — indexing RAW files and panoramas spikes RAM temporarily. Ideally RAM scales with CPU cores; reduce PHOTOPRISM_WORKERS if you're tight.

Storage: SSD for MariaDB and the storage folder (thumbnails, cache, config). HDD or NAS is fine for originals — they're read during indexing and streaming, not random-IOPS hell. Budget ~25–50% extra disk for sidecars and previews on top of your library size.

HTTPS via reverse proxy, strong admin password, don't expose MariaDB publicly. First index of a large library takes hours — plan the initial import overnight.

License note: Community edition is AGPL. Self-hosting for yourself or your organization is standard; read the license if you're reselling hosted PhotoPrism as a service.

Some map and membership features need a paid tier; the core browse-search-organize workflow remains in the community edition.

Who it's for (and who should skip it)

Good fit: photographers with RAW archives, families with years of files on a NAS, privacy-focused users who want AI labeling without cloud upload, anyone who likes WebDAV and folder-first workflows.

Maybe skip it: if you want the smoothest possible "install app, forget it" phone backup — Immich is stronger there. If you won't allocate 4 GB+ RAM and swap for indexing, you'll fight the indexer. If AGPL obligations for your use case are unclear, talk to a lawyer before production.

Hosting it in Canada

We run PhotoPrism on Canadian Docker hosting — SSD for database and storage volumes, bulk disk for originals, TLS, and backup plans that cover both MariaDB and the storage folder. Photo libraries are never one-size-fits-all.

Tell us library size in GB and whether originals live on NAS — we'll size RAM, swap, and disks so the first index doesn't choke halfway through your wedding photos.

Tags:
  • PhotoPrism
  • Photos
  • Self-Hosted
  • Docker
  • Privacy

Need Help With Your Hosting?

Tell us about your application — we respond within 1 hour with honest recommendations.