Repos / Immich
AlternativesImmich
For anyone who wants to stop depending on a cloud photo service and is willing to run their own server with Docker.
What it does.
- upload and view your photos and videos from the mobile app or the browser
- back up your phone automatically when you open the app
- search by metadata, objects, faces and CLIP
- recognize and group faces, and build shared albums
- host several users on the same server
Systems: Server: 64-bit Linux with Docker and the Compose plugin (amd64 or arm64). It also runs on Windows and macOS with Docker Desktop, but the documentation advises against it. Client: browser and mobile app.
What you need.
- RAM, minimum: 6 GB Whole service With only 4 GB it runs only with machine learning turned off. source for this requirement (opens in a new tab)
- RAM, recommended: 8 GB Whole service source for this requirement (opens in a new tab)
- CPU, minimum: 2 cores Whole service On amd64 the machine-learning container requires x86-64-v2 (most CPUs since ~2012). source for this requirement (opens in a new tab)
- CPU, recommended: 4 cores Whole service source for this requirement (opens in a new tab)
- Disk, estimated: 3 GB Whole service Just the Postgres database: the docs say "between 1 and 3 GB" (we use 3). Your photos and videos go separately. It must live on a local SSD, never on a network folder. source for this requirement (opens in a new tab)
- Thumbnails and transcoded videos usually add 10% to 20% to the size of your library. source for this requirement (opens in a new tab)
- Docker with the Compose plugin: the command is "docker compose", not "docker-compose". source for this requirement (opens in a new tab)
Check whether your machine can handle it. It adds up its RAM, CPU and disk together with other repos.
How to install.
Create a folder for the configuration files:
mkdir ./immich-app && cd ./immich-appDownload the official docker-compose.yml:
wget -O docker-compose.yml https://github.com/immich-app/immich/releases/latest/download/docker-compose.ymlDownload the variables file as .env:
wget -O .env https://github.com/immich-app/immich/releases/latest/download/example.envEdit .env: UPLOAD_LOCATION (where your photos are stored), DB_PASSWORD (A-Za-z0-9 only) and TZ.
Start the containers:
docker compose up -d
Commands taken from the official documentation. Read them before you run them: it is your machine.
Permissions and data.
- It stores your whole library in UPLOAD_LOCATION and its database in DB_DATA_LOCATION: this is personal information, so be careful who gets into the server.
- The mobile app uploads your photos to the "Server Endpoint URL" you give it.
- Change DB_PASSWORD to a value of your own; the documentation says Postgres is not exposed publicly and the password is only for local authentication.
Limits and warnings.
- The README warns you to always follow a 3-2-1 backup plan: Immich does not replace a separate copy of your photos.
- On Windows, the database does not work on NTFS or exFAT/FAT32, nor on folders mounted under /mnt in WSL; you have to use a Docker volume.
- Docker inside LXC containers is not recommended; the documentation prefers a full virtual machine.
- On non-Linux systems, the documentation says its ability to help with problems is greatly reduced.
Real cost and cloud.
- There is no fee for using the software; the real cost is the always-on server, the disk and your time to keep it updated.
- Photos live on your server: object and face search runs in its machine learning container, which is why it asks for the RAM listed.
- Backups are yours: the README's 3-2-1 rule means keeping copies on another disk and in another place.
License.
AGPL-3.0 Open source with copyleft
AGPL-3.0: strong copyleft. If you modify Immich and offer it as a service over a network, you must publish your changes under the same license.
This is a summary to orient you, not legal advice. For commercial use, read the original LICENSE file.
Where all of this comes from.
Checked against the official documentation on October 29, 2026; this is not a lab test. Nothing was installed or measured to write this guide. If something has changed, the project's documentation is the authority.