Part 5 – Immich
Immich is a self-hosted photo and video backup solution with a Google Photos-like interface. It automatically backs up photos from your phone over Tailscale, organises them by date and location, and uses machine learning for face recognition and object search — all running locally on your own hardware.
What you get:
- Automatic photo backup from iPhone, Android, and iPad
- Face recognition and object search
- Timeline view, albums, and sharing
- Video support
- iOS and Android apps
Prerequisites
- ✅ Docker and the
wcp-networknetwork in place - ✅ Caddy running with
immich.wcpconfigured - ✅ Plenty of storage space for photos
→ Follow Part 2 and Part 3 first.
Step 1 – Create the Immich folder
mkdir -p /opt/docker/immich
cd /opt/docker/immichStep 2 – Download the official compose file
Immich provides an official compose.yml that is kept up to date. Use it directly:
wget https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
wget https://github.com/immich-app/immich/releases/latest/download/example.env -O .envStep 3 – Configure the .env file
nano .envKey settings to update:
# Database password — change this
DB_PASSWORD=change-this-password
# Where photos are stored on the host
UPLOAD_LOCATION=/opt/immich-library
# Your timezone
TZ=Europe/StockholmLeave the rest as defaults for now.
Step 4 – Create the photo library directory
sudo mkdir -p /opt/immich-library
sudo chown -R $USER:$USER /opt/immich-libraryStep 5 – Add to the wcp-network
Open docker-compose.yml and add the external network at the bottom:
nano docker-compose.ymlAdd to the networks section at the bottom of the file:
networks:
default:
name: wcp-network
external: trueStep 6 – Start Immich
docker compose up -d
docker compose logs -fThe first start downloads machine learning models — this takes a few minutes. When logs stabilise, press CTRL+C.
Step 7 – Access Immich
Open your browser:
http://immich.wcpCreate your admin account on the first visit.
Step 8 – Install the mobile app
iOS: Search for Immich in the App Store.
Android: Available on Google Play or F-Droid.
In the app:
- Set the server URL to
http://immich.wcp(connected via Tailscale) - Log in with your account
- Enable automatic backup in the app settings
Photos will now back up automatically whenever your phone is connected to Tailscale.
Step 9 – GPU acceleration for machine learning (optional)
Immich’s face recognition and object detection can use the GPU for faster processing. Add this to the immich-machine-learning service in docker-compose.yml:
immich-machine-learning:
deploy:
resources:
reservations:
devices:
- driver: nvidia
count: 1
capabilities: [gpu]Restart to apply:
docker compose up -dKeeping Immich updated
Immich releases updates frequently. Update regularly:
cd /opt/docker/immich
docker compose pull
docker compose up -dRelated guides
- Part 3 – Caddy Reverse Proxy — required for
immich.wcpto work - Tailscale – Getting Started — required for mobile app access
- Immich Documentation — official docs