Overview

Self-hosted replacement for Google Photos and Apple iCloud. Photos live on a local NAS, Immich runs in Docker on a Raspberry Pi 4, and Tailscale makes it accessible from anywhere, with no subscription and no third party cloud.

Hardware

  • Ugreen NAS DH2300 (2-Bay): 2× 4 TB in RAID 1
  • Raspberry Pi 4 (8 GB): Docker host

How it works

The NAS doesn't support Docker, so storage and compute are split: the NAS share is mounted on the Pi, and Immich reads and writes photos directly to that mount. Tailscale connects all my devices in a private mesh network, with no port forwarding and no public IP needed.

Software

  • Immich: self-hosted photo management, automatic mobile backup, face recognition, Google Photos-like UI
  • Docker: runs the full Immich stack (server, ML, database, Redis)
  • Tailscale: WireGuard-based VPN for secure remote access