Unraid Immich "Performance" Setup + Google Takeout Guide¶
TL;DR:¶
Immich Setup¶
We use a share living on the Cache (SSD/NVMe) for encoded-video, profile and thumbs - and a HDD share living on the Array for backups, library and upload. This setup allows us to leverage the speed of the Cache for frequently accessed data while utilizing the Array for long-term storage of original media files.
Plus we use a custom network for better performance and security, avoiding an overhead of the default bridge network.
Google Takeout Guide¶
Also for the migration from Google Photos to Immich, we use Google Takeout to export our photos and videos, and then utilize a Firefox Docker container on Unraid to download the exported files directly to our Unraid server, avoiding the need to download them to a local machine first. We'll be using PhotoMigrator to automate the process of importing photos from our Google Takeout export into Immich. PhotoMigrator takes care of handling metadata and organizing the photos in the correct structure for Immich.
Note¶
If you're unsure about using Immich, you can try it out for free on PixelUnion (non-sponsored).
Just a friendly recommendation to test Immich without setting it up yourself first. You can create a free account with 16GB included storage and upload a few photos to see how the interface works and if it meets your needs before going through the setup process on Unraid.
Intended Use¶
Important
READ THROUGH BEFORE STARTING YOUR SETUP.
In Scope:¶
This guide is intended for NEW setups of Immich on Unraid.
Out of Scope:¶
Upgrading existing Immich setups as it requires significant changes to the existing setup and data migration. If you have an existing Immich setup on Unraid and want to optimize it for better performance, I would recommend backing up your data, setting up a new instance of Immich following this guide and then migrating your data from the old instance to the new one.
If you REALLY want to upgrade: Consult the Immich documentation and community for best practices on how to do this migration to ensure that you don't lose any data in the process. Happy learning!
What's inside this guide?¶
This guide covers an optimal Unraid-native setup of Immich (no Docker Compose) with performance optimization and optional Google Takeout migration.
Important
This guide is intended for users who want to run a NEW instance of Immich on Unraid and are looking for best practices to achieve optimal performance.
Guide Overview¶
Getting Started¶
| Topic | Description | |
|---|---|---|
| Hardware & Prerequisites | Minimum specs, pre-requisites checklist, storage planning | |
| Phase 1: Request Google Takeout Export | Start your Google Photos export early (takes hours) |
Installation¶
| Step | Description | |
|---|---|---|
| 1 | Create Unraid Shares | immich (HDD array) + immich-gen (SSD cache) shares |
| Phase 2: Download Takeout via Firefox | Download exports directly to Unraid via Firefox container | |
| 2 | Create Docker Network | immich_internal network for container communication |
| 3 | Choose GPU Platform | Select templates for your GPU (NVIDIA/Intel/AMD/CPU) |
| 4 | Download Docker Templates | Download all Unraid container templates |
| 5 | PostgreSQL Setup | Database with VectorChord for vector search |
| 6 | Valkey Setup | Redis-compatible cache/message broker |
| 7 | Machine Learning Setup | Face recognition, CLIP search, OCR |
| 8 | Immich Server Setup | Main application — web UI, API, workers |
| 9 | Container Start Order | FolderView3 for correct startup sequence |
| 10 | Setup, Verify & Configure | Admin settings, image/video config, mobile apps, GPU verification |
Google Takeout Migration¶
| Topic | Description | |
|---|---|---|
| Phase 2.5: Extract tar Archives | Only if you chose tar format |
|
| Phase 3: Import with PhotoMigrator | Automated import with metadata handling |
After Setup¶
| Topic | Description | |
|---|---|---|
| Immich Power Tools | Advanced library management (bulk ops, analytics) | |
| Cleanup After Migration | Remove temporary files, API keys, Firefox container | |
| FAQ | Common questions answered |