[GUIDE] How to Set Up Immich from Scratch in 10 Minutes
[GUIDE] How to Set Up Immich from Scratch in 10 Minutes
Setting up Immich is quite straightforward and quick, which is a pleasant surprise. There’s no need to be concerned about the setup time or the process, as it only takes a few minutes.
Hardware Setup
I used my proxmox cluster with R730XD to run Immich. The R730XD features SSD disks in ZFS, which is okay for Immich, and I have a 16TB ZFS HDD Pool for additional storage.
Don’t worry about external HDD performance—loading thumbnails is almost instantaneous from SSD, even when you scroll at lightning speed. Thumbnails display immediately, making it more than 10 times faster than Google Photos.
Disk Setup
I’ve installed Immich on the SSD system disk, where it manages the thumbnail database. Meanwhile, my entire photo library is stored on a 16TB HDD Pool. This setup ensures that photo loading is instantaneous, with no noticeable slowdown even though the photos are stored externally.
Installation Steps
Follow these steps to quickly install Immich and import 200GB of photos from Google Photos in just a few minutes. Note that I’m using Ubuntu 24.04 VM for this setup.
- Switch to Root and Navigate to the Root Directory:
1 2
sudo su cd
- Install Docker:
1
curl -s https://get.docker.com | bash
- Create the Immich Directory and Navigate to It:
1 2
mkdir immich cd immich
- Download the Docker Compose File:
1
wget https://raw.githubusercontent.com/immich-app/immich/main/docker/docker-compose.yml
- Download the Pre-Configuration File:
1
wget https://raw.githubusercontent.com/immich-app/immich/main/docker/example.env
- Edit the
example.env
File:1
nano example.env
Change the
UPLOAD_LOCATION
line to:UPLOAD_LOCATION=/root/immich/data/
- Save and Exit Nano, Then Rename
example.env
to.env
:1
mv example.env .env
- Create the Data Directory:
1
mkdir data
- Run Docker Compose to Start Immich:
1
docker compose up -d
- Access Immich on Your Web Browser:
- Navigate to
http://your-immich-ip:2283
- Navigate to
External HDD Setup (Optional)
If you have an external HDD, you can symlink it as follows:
- Replace step 7 above with:
1
ln -s /path/to/external/hdd /root/immich/data
How to Import Google Photos
- Export Your Photos Using Google Takeout:
- Log in to your Google account.
- Export your photos in a zip file with each file being up to 50GB.
- Download the Zip Files:
- Google will email you the export files, typically within a day.
- Download and Extract
immich-go
:1 2
wget https://github.com/simulot/immich-go/releases/download/0.13.2/immich-go_Linux_x86_64.tar.gz tar -xvzf immich-go_Linux_x86_64.tar.gz
- Run the
immich-go
Command:- First, retrieve your API key from the Immich settings page.
- Then run:
1
./immich-go -server=http://your-immich-ip:2283 -key=your-api-key upload -create-albums -google-photos takeout-*.zip
Replace
your-api-key
with the key you obtained, andtakeout-*
with the names of your Google Takeout files.
How to Import Google Photos Using immich-go
on Windows 11
If you’re using Windows 11, follow these steps to import your Google Photos to Immich:
- Export Your Photos Using Google Takeout:
- Log in to your Google account.
- Export your photos in a zip file with each file being up to 50GB.
- Download the Zip Files:
- Google will email you the export files, typically within a day.
- Download and Extract
immich-go
:- Download
immich-go
for Windows from the GitHub repository. - Extract the contents of the zip file.
- Download
- Open Command Prompt:
- Press
Win + R
, typecmd
, and pressEnter
.
- Press
- Navigate to the Extracted
immich-go
Directory:1
cd path\to\extracted\immich-go
- Run the
immich-go
Command:- First, retrieve your API key from the Immich settings page.
- Then run:
1
immich-go.exe -server=http://your-immich-ip:2283 -key=your-api-key upload -create-albums -google-photos takeout-*.zip
Replace
your-api-key
with the key you obtained, andtakeout-*
with the names of your Google Takeout files.
This process will upload your Google Photos directly to your Immich server, organizing them into albums if desired.
I hope this guide is helpful. If you have any questions or encounter any errors, feel free to reach out, and I’ll be glad to assist you.