Discover your interests, together

Real deals, honest reviews and shopping stories from people who share your interests — every day on Milik.

Discover your interests, togetherReal deals, honest reviews and shopping stories from people who share your interests — every day on Milik.

Self-Hosted Photo Backup With Immich on NAS and Old PCs

Self-Hosted Photo Backup With Immich on NAS and Old PCs
Interest|NAS Usage

What Immich Gives You (and What It Doesn’t)

Immich self-hosted setup means running your own photo server with Docker on a NAS or spare computer so your pictures live on storage you control instead of a third-party cloud, while still enjoying a modern gallery app with timeline, albums, and sharing features. This is for people who want a Google Photos alternative on NAS without subscription fees, and who are comfortable doing a little terminal work to get Docker photo backup running. You do gain control, but you also accept that you are the one keeping the lights on. When you host Immich on your NAS or an old Mac, PC, or Linux box, those few steps are enough to turn that hardware into a personal self-hosted photo server. Your photos are no longer stored on Google’s servers; they sit in the location you chose when configuring Docker within your self-hosted setup. The big caveat: Immich does not integrate with Android’s Photo Picker today, so your backed-up cloud library will not appear inside other Android apps the way Google Photos does. That loss of integration is the main reason many people keep a hybrid setup instead of going all-in.

Self-Hosted Photo Backup With Immich on NAS and Old PCs

Deciding Between Full Self-Hosting and a Hybrid Approach

Before you start installing anything, it helps to decide what role Immich will play in your life. One option is to make it your single Google Photos alternative NAS setup: move your whole library, uninstall Google Photos, and rely only on your self-hosted photo server. That gives maximum control but can make day-to-day Android photo backup sync less convenient. Android’s system photo picker shows a unified view of images stored locally on your phone and in supported cloud services, including face search and album browsing. Immich can back up every photo and video to your NAS, but it cannot surface them in that picker, so older shots that only exist in Immich will not appear when another app asks you to choose a photo. According to one user who tried to switch entirely, leaving Google Photos “technically gave me more control over my library, but it also made that library harder to use.” A pragmatic compromise is a hybrid approach: keep backing up to Immich for primary, controlled storage, but continue syncing to a cloud account for Android integration safety.

Step-by-Step: Docker-Based Immich Self-Hosted Setup

Once you are clear that you want Immich as a self-hosted photo backup, the actual install is less scary than it sounds. Immich runs in Docker, which packages all the parts it needs into separate containers. As soon as Docker is up and running, you can largely ignore its interface; most of the work happens in a terminal window. Below is a clean sequence you can follow on a NAS that supports Docker, or on an old computer you repurpose as a server.

  1. Install Docker: On desktop systems, install Docker Desktop; Linux users can install Docker Engine plus the Docker Compose plugin. Windows setups can use Docker Desktop with WSL 2 support.
  2. Create an Immich folder: Open Terminal or a similar shell and run: mkdir ~/immich-app cd ~/immich-app The first command creates an immich-app directory in your home folder, and the second moves your terminal into it so all Immich files stay together.
  3. Download Immich configuration: From inside that folder, run: curl -L -o docker-compose.yml https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml curl -L -o .env https://github.com/immich-app/immich/releases/latest/download/example.env These two files tell Docker which containers to start and how to configure them.
  4. Edit the environment file: Open .env in a text editor and set UPLOAD_LOCATION and DB_DATA_LOCATION—for example: UPLOAD_LOCATION=./library DB_DATA_LOCATION=./postgres UPLOAD_LOCATION defines where Immich stores your uploaded media, while DB_DATA_LOCATION defines where the PostgreSQL database lives. Change the database password to something unique and decide which disk or share should hold the files.
  5. Start Immich: Back in your terminal, still inside the immich-app folder, run: docker compose up -d Docker reads docker-compose.yml, downloads Immich’s images, sets up each container, connects the services, and starts them in the background. After this, you can reach Immich in your browser and start signing in from your phone.

That is the entire core procedure. Those few commands are enough to turn almost any Mac, PC, or Linux machine into a personal photo server that behaves a lot like a cloud gallery. The hidden gotcha is storage planning: be sure your UPLOAD_LOCATION points to disks with enough space and good backups, because Immich will happily keep accepting new photos for years.

Using Immich Day to Day and Dealing With Android

Once Immich is running, the fun part begins. The web and mobile interfaces give you timeline views, albums, multiple sharing options, facial recognition, and geographic data—many of the features people associate with a polished cloud gallery. From your perspective, it feels like you have rebuilt a familiar experience, but now the data lives on your NAS or server. On Android, you install the Immich app, point it at your server, and set it to back up new photos and videos. In effect, it becomes your Docker photo backup client, pushing media straight into the library you own. The catch is not backup itself but integration. Immich can safely store decades of photos and videos, yet it cannot surface them inside Android’s system photo picker today, so any images that are only in Immich will stay invisible when other apps request photos. That limitation is very noticeable when you need to upload old shots—like printing photos from a child’s first year—because you have to leave the app, find and download each image in Immich, then return to upload it. If that sounds painful, it is another argument for keeping a cloud account in parallel.

Is Self-Hosting With Immich Worth It?

Immich shines when your priority is control: you choose where your photos and videos live, you decide how much storage to allocate, and you are not paying ongoing subscription fees for the privilege. Docker-based deployment simplifies Immich installation on NAS systems and repurposed computers, because once Docker is installed, the commands boil down to creating a folder, downloading configuration, setting locations, and running a single compose command. The trade-off is convenience on Android. You can run Immich as a reliable self-hosted photo server, but you cannot treat it as a drop-in replacement for Android photo backup sync inside every app. For many people, the sweet spot is using Immich as the primary archive while still backing up to a cloud service to keep search, albums, and picker integration working. If you go this route, remember: you are now the admin. Watch your storage, keep your machine patched, and treat Immich like important infrastructure. Done thoughtfully, it is worth it—but only if you accept that control and responsibility come as a package.

Milik earns a commission when you shop through our links, at no extra cost to you.

You May Also Like

Comments
Say something...
No comments yet. Be the first to share your thoughts!