Application hosting

Hosting Immich

High-performance self-hosted photo and video backup solution featuring on-device machine learning facial recognition, object detection, timeline scrubbing, and automated mobile syncing.

Min vCPU
Depends on workload
Min memory
Depends on workload
Min storage
Depends on workload

Must have

Hard prerequisites

  • 64-bit Linux host (Ubuntu 22.04/24.04 or Debian 12 recommended) with Docker Engine and Docker Compose v2.
  • x86_64 CPU with AVX/AVX2 instruction set support (or specialized CPU fallback build for older processors).
  • Minimum 4 GB RAM (8 GB+ strongly recommended if facial recognition and video transcoding run concurrently).
  • Persistent local SSD/NVMe volume or high-throughput NFS/ZFS array for photo storage and PostgreSQL database.

Recommended

Documented guidance

  • KVM VPS or Dedicated Bare Metal with at least 4 dedicated vCPUs and 8 GB RAM.Machine learning indexing and background CLIP analysis are CPU-intensive.
  • Fast NVMe storage for database and thumbnails; scalable block storage or object storage for raw photo/video assets.Thumbnails generate hundreds of thousands of small file IOPS.

Capacity depends on your workload

Immich runs multiple microservices: Server, Microservices worker, Machine Learning container, PostgreSQL with pgvector, and Redis. Idle memory footprint is approximately 1.5–2.0 GB, scaling up to 4–6 GB during heavy bulk ingestion.

We only compare what providers publish. A RAM figure alone can't confirm compatibility or production capacity.

Deploy with

Supported paths

  • Docker Compose (Official & recommended deployment method)
  • Kubernetes via community Helm charts
  • Proxmox LXC container (with Docker inside or native mounts)

The host must provide

Runtime

Docker Engine
>= 24.0
PostgreSQL with pgvector
>= 14 (vecto.rs/pgvecto.rs)
Redis
>= 7.0

Storage

Persistent data

Plan for two separate storage zones: (1) High-speed NVMe storage for PostgreSQL database, vector embeddings, and generated WebP thumbnails; (2) Scalable bulk storage for original RAW/JPEG files and MP4/MOV videos. Back up the PostgreSQL database and UPLOAD_LOCATION synchronously.

Step by step

Production deployment with Docker Compose

  1. Download official configuration files

    Create a dedicated directory /opt/immich, then download docker-compose.yml and example.env from the official Immich release repository.

    Official instructions
  2. Configure environment variables and upload path

    Copy example.env to .env. Set UPLOAD_LOCATION to your designated persistent data disk, configure DB_PASSWORD with a strong random string, and verify IMMICH_VERSION.

    Official instructions
  3. Start containers and configure reverse proxy

    Run docker compose up -d. Verify all containers (server, worker, redis, database, machine learning) are healthy via docker compose ps. Place Nginx or Caddy in front with SSL/TLS and client_max_body_size set to 50000M.

    Official instructions

Security

Before you go public

  • Never expose the raw port 2283 directly to the public internet without an authenticated reverse proxy (Nginx, Caddy, Cloudflare Tunnel, or Tailscale).
  • Enable HTTPS using Let's Encrypt with TLS 1.3 to protect mobile token transmission.
  • Configure password policies and OAuth/OIDC authentication if integrating with Authentik or Keycloak.

Cost

Beyond the server price

  • Compute cost: 4 vCPU / 8 GB RAM VPS starts at approximately $15–$25/month.
  • Storage cost: High-capacity NVMe or block storage costs between $0.05 and $0.10 per GB/month; consider Hetzner Storage Boxes or S3-compatible cold tiers for long-term archives.
  • Backup cost: Secondary offsite backup storage for large multi-terabyte photo libraries.

Matching plans

Plans with published evidence

Hetzner Cloud

Hetzner Cloud CPX21 (US locations)

3vCPU
4 GBRAM
80 GBStorage
2 TBTransfer
  • Shared AMD vCPU
  • NVMe SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • 64-bit Linux host (Ubuntu 22.04/24.04 or Debian 12 recommended) with Docker Engine and Docker Compose v2.This prerequisite has no comparable published plan field.
  • x86_64 CPU with AVX/AVX2 instruction set support (or specialized CPU fallback build for older processors).This prerequisite has no comparable published plan field.
  • Minimum 4 GB RAM (8 GB+ strongly recommended if facial recognition and video transcoding run concurrently).This prerequisite has no comparable published plan field.
  • Persistent local SSD/NVMe volume or high-throughput NFS/ZFS array for photo storage and PostgreSQL database.This prerequisite has no comparable published plan field.
Hetzner Cloud

Hetzner Cloud CPX22 (Germany and Finland)

2vCPU
4 GBRAM
80 GBStorage
20 TBTransfer
  • Shared AMD vCPU
  • NVMe SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • 64-bit Linux host (Ubuntu 22.04/24.04 or Debian 12 recommended) with Docker Engine and Docker Compose v2.This prerequisite has no comparable published plan field.
  • x86_64 CPU with AVX/AVX2 instruction set support (or specialized CPU fallback build for older processors).This prerequisite has no comparable published plan field.
  • Minimum 4 GB RAM (8 GB+ strongly recommended if facial recognition and video transcoding run concurrently).This prerequisite has no comparable published plan field.
  • Persistent local SSD/NVMe volume or high-throughput NFS/ZFS array for photo storage and PostgreSQL database.This prerequisite has no comparable published plan field.
Hetzner Cloud

Hetzner Cloud CPX31 (US locations)

4vCPU
8 GBRAM
160 GBStorage
3 TBTransfer
  • Shared AMD vCPU
  • NVMe SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • 64-bit Linux host (Ubuntu 22.04/24.04 or Debian 12 recommended) with Docker Engine and Docker Compose v2.This prerequisite has no comparable published plan field.
  • x86_64 CPU with AVX/AVX2 instruction set support (or specialized CPU fallback build for older processors).This prerequisite has no comparable published plan field.
  • Minimum 4 GB RAM (8 GB+ strongly recommended if facial recognition and video transcoding run concurrently).This prerequisite has no comparable published plan field.
  • Persistent local SSD/NVMe volume or high-throughput NFS/ZFS array for photo storage and PostgreSQL database.This prerequisite has no comparable published plan field.
Hetzner Cloud

Hetzner Cloud CPX32 (Germany and Finland)

4vCPU
8 GBRAM
160 GBStorage
20 TBTransfer
  • Shared AMD vCPU
  • NVMe SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • 64-bit Linux host (Ubuntu 22.04/24.04 or Debian 12 recommended) with Docker Engine and Docker Compose v2.This prerequisite has no comparable published plan field.
  • x86_64 CPU with AVX/AVX2 instruction set support (or specialized CPU fallback build for older processors).This prerequisite has no comparable published plan field.
  • Minimum 4 GB RAM (8 GB+ strongly recommended if facial recognition and video transcoding run concurrently).This prerequisite has no comparable published plan field.
  • Persistent local SSD/NVMe volume or high-throughput NFS/ZFS array for photo storage and PostgreSQL database.This prerequisite has no comparable published plan field.
Hetzner Cloud

Hetzner Cloud CPX41 (US locations)

8vCPU
16 GBRAM
240 GBStorage
4 TBTransfer
  • Shared AMD vCPU
  • NVMe SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • 64-bit Linux host (Ubuntu 22.04/24.04 or Debian 12 recommended) with Docker Engine and Docker Compose v2.This prerequisite has no comparable published plan field.
  • x86_64 CPU with AVX/AVX2 instruction set support (or specialized CPU fallback build for older processors).This prerequisite has no comparable published plan field.
  • Minimum 4 GB RAM (8 GB+ strongly recommended if facial recognition and video transcoding run concurrently).This prerequisite has no comparable published plan field.
  • Persistent local SSD/NVMe volume or high-throughput NFS/ZFS array for photo storage and PostgreSQL database.This prerequisite has no comparable published plan field.
Hetzner Cloud

Hetzner Cloud CPX42 (Germany and Finland)

8vCPU
16 GBRAM
320 GBStorage
20 TBTransfer
  • Shared AMD vCPU
  • NVMe SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • 64-bit Linux host (Ubuntu 22.04/24.04 or Debian 12 recommended) with Docker Engine and Docker Compose v2.This prerequisite has no comparable published plan field.
  • x86_64 CPU with AVX/AVX2 instruction set support (or specialized CPU fallback build for older processors).This prerequisite has no comparable published plan field.
  • Minimum 4 GB RAM (8 GB+ strongly recommended if facial recognition and video transcoding run concurrently).This prerequisite has no comparable published plan field.
  • Persistent local SSD/NVMe volume or high-throughput NFS/ZFS array for photo storage and PostgreSQL database.This prerequisite has no comparable published plan field.
Hetzner Cloud

Hetzner Cloud CPX51 (US locations)

16vCPU
32 GBRAM
360 GBStorage
5 TBTransfer
  • Shared AMD vCPU
  • NVMe SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • 64-bit Linux host (Ubuntu 22.04/24.04 or Debian 12 recommended) with Docker Engine and Docker Compose v2.This prerequisite has no comparable published plan field.
  • x86_64 CPU with AVX/AVX2 instruction set support (or specialized CPU fallback build for older processors).This prerequisite has no comparable published plan field.
  • Minimum 4 GB RAM (8 GB+ strongly recommended if facial recognition and video transcoding run concurrently).This prerequisite has no comparable published plan field.
  • Persistent local SSD/NVMe volume or high-throughput NFS/ZFS array for photo storage and PostgreSQL database.This prerequisite has no comparable published plan field.
Hetzner Cloud

Hetzner Cloud CPX52 (Germany and Finland)

12vCPU
24 GBRAM
480 GBStorage
20 TBTransfer
  • Shared AMD vCPU
  • NVMe SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • 64-bit Linux host (Ubuntu 22.04/24.04 or Debian 12 recommended) with Docker Engine and Docker Compose v2.This prerequisite has no comparable published plan field.
  • x86_64 CPU with AVX/AVX2 instruction set support (or specialized CPU fallback build for older processors).This prerequisite has no comparable published plan field.
  • Minimum 4 GB RAM (8 GB+ strongly recommended if facial recognition and video transcoding run concurrently).This prerequisite has no comparable published plan field.
  • Persistent local SSD/NVMe volume or high-throughput NFS/ZFS array for photo storage and PostgreSQL database.This prerequisite has no comparable published plan field.
Hetzner Cloud

Hetzner Cloud CPX62 (Germany and Finland)

16vCPU
32 GBRAM
640 GBStorage
20 TBTransfer
  • Shared AMD vCPU
  • NVMe SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • 64-bit Linux host (Ubuntu 22.04/24.04 or Debian 12 recommended) with Docker Engine and Docker Compose v2.This prerequisite has no comparable published plan field.
  • x86_64 CPU with AVX/AVX2 instruction set support (or specialized CPU fallback build for older processors).This prerequisite has no comparable published plan field.
  • Minimum 4 GB RAM (8 GB+ strongly recommended if facial recognition and video transcoding run concurrently).This prerequisite has no comparable published plan field.
  • Persistent local SSD/NVMe volume or high-throughput NFS/ZFS array for photo storage and PostgreSQL database.This prerequisite has no comparable published plan field.
Hostinger

Hostinger KVM 1 VPS

1vCPU
4 GBRAM
50 GBStorage
4 TBTransfer
  • KVM vCPU (AMD EPYC)
  • NVMe SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • 64-bit Linux host (Ubuntu 22.04/24.04 or Debian 12 recommended) with Docker Engine and Docker Compose v2.This prerequisite has no comparable published plan field.
  • x86_64 CPU with AVX/AVX2 instruction set support (or specialized CPU fallback build for older processors).This prerequisite has no comparable published plan field.
  • Minimum 4 GB RAM (8 GB+ strongly recommended if facial recognition and video transcoding run concurrently).This prerequisite has no comparable published plan field.
  • Persistent local SSD/NVMe volume or high-throughput NFS/ZFS array for photo storage and PostgreSQL database.This prerequisite has no comparable published plan field.
Hostinger

Hostinger KVM 2 VPS

2vCPU
8 GBRAM
100 GBStorage
8 TBTransfer
  • KVM vCPU (AMD EPYC)
  • NVMe SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • 64-bit Linux host (Ubuntu 22.04/24.04 or Debian 12 recommended) with Docker Engine and Docker Compose v2.This prerequisite has no comparable published plan field.
  • x86_64 CPU with AVX/AVX2 instruction set support (or specialized CPU fallback build for older processors).This prerequisite has no comparable published plan field.
  • Minimum 4 GB RAM (8 GB+ strongly recommended if facial recognition and video transcoding run concurrently).This prerequisite has no comparable published plan field.
  • Persistent local SSD/NVMe volume or high-throughput NFS/ZFS array for photo storage and PostgreSQL database.This prerequisite has no comparable published plan field.
Hostinger

Hostinger KVM 4 VPS

4vCPU
16 GBRAM
200 GBStorage
16 TBTransfer
  • NVMe SSD
Compatibility unclear from published plan data

Meeting documented runtime prerequisites does not prove production capacity. Traffic, workloads, software configuration, and shared host limits are not measured here.

  • 64-bit Linux host (Ubuntu 22.04/24.04 or Debian 12 recommended) with Docker Engine and Docker Compose v2.This prerequisite has no comparable published plan field.
  • x86_64 CPU with AVX/AVX2 instruction set support (or specialized CPU fallback build for older processors).This prerequisite has no comparable published plan field.
  • Minimum 4 GB RAM (8 GB+ strongly recommended if facial recognition and video transcoding run concurrently).This prerequisite has no comparable published plan field.
  • Persistent local SSD/NVMe volume or high-throughput NFS/ZFS array for photo storage and PostgreSQL database.This prerequisite has no comparable published plan field.

Want the full monthly bill? Use the hosting cost calculator. It keeps unknown charges visible.