Loading page...Загружаем страницу...正在加载页面...
AtlasRepo

Self-host Immich: I measured what Google Photos replacement actually costs in RAM

Description and use

Self-hosting Immich needs over 4 GB free RAM and ~5 GB disk. The stack uses ~2.4 GB RAM, and ML search runs on CPU in 2.2 s. Removing the ML service saves memory but loses smart search and face recognition.

Problem

Deploying a self-hosted Google Photos replacement that requires significant RAM and disk, making it unsuitable for low-resource environments.

Outcome

Immich’s total working set is ~2.4 GB RAM (server 962 MB, ML 928 MB, Postgres 465 MB, Valkey 14 MB). Disk usage for 5 photos is 4.7 GB. ML search runs on CPU in ~2.2 s. The stack requires 4 GB+ free RAM and ~5 GB disk before photos, making it unsuitable for very small VPS or free-tier PaaS options.

Workflow

  • Download official docker‑compose.yml and example.env from Immich releases
  • Edit .env: set DB_PASSWORD to an alphanumeric value, set TZ, and set UPLOAD_LOCATION to a large disk
  • Run docker compose up -d to pull images (~4.7 GB) and start containers
  • Create admin account via http://localhost:2283 and complete onboarding
  • Upload photos via API or mobile backup
  • Use ML smart search and face recognition features

Evidence

Immich is a four-container stack that wants gigabytes.

Source

Our measured working set was ~2.4 GB across the stack, with spikes during ML processing

Source

4.7 GB of images

Source

"sunset over water" → correct photo ranked #1, 2.2 s on CPU

Source

Special characters in DB_PASSWORD break the connection string — the env file warns you; believe it.

Source

  • Record date: 2026-11-02T00:59:03.865Z