跳至主要内容

Immich:高效能自託管相簿與影片備份平台

Immich 是目前開源社群中最受歡迎的自託管照片與影片管理系統,專為取代 Google Photos 與 iCloud Photos 而設計。它具備極速的時間軸滾動體驗、AI 智慧辨識,並提供體驗極佳的 iOS 與 Android 手機客戶端。

Immich 跨平台介面總覽


主要特色​

  1. 自動手機備份:支援 iOS 與 Android 雙平台 App,可在背景無感自動上傳相簿與原畫質影片。
  2. 本機 AI 智慧搜尋:內建機器學習模型,支援人臉辨識與分組、物件分類、地圖足跡檢視以及 CLIP 自然語言語意搜尋(例如輸入「海邊」、「日落」即可找到相片)。
  3. 多人共用與共享相簿:支援多使用者獨立空間、伴侶共享庫 (Partner Sharing) 與公開相簿分享。
  4. 格式支援廣泛:完整支援 RAW 檔、Live Photo 動態照片、HDR 影片與 EXIF 中繼資料檢視。

Immich 網頁時間軸與人臉辨識


部署步驟 (Docker Compose)​

Immich 官方建議使用其維護的標準 compose.yaml 與 .env 範本進行部署。

1. 建立目錄並下載官方設定檔​

# 建立專用目錄
sudo mkdir -p /opt/stacks/immich
cd /opt/stacks/immich

# 下載官方 docker-compose.yaml 與 .env 範本
sudo curl -fsSL -o compose.yaml https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
sudo curl -fsSL -o .env https://github.com/immich-app/immich/releases/latest/download/example.env

2. 編輯 .env 環境變數​

編輯 .env 檔案以指定照片儲存路徑與資料庫密碼:

# 照片與影片在宿主機上的實際儲存路徑 (非常重要)
UPLOAD_LOCATION=/mnt/storage/immich

# 資料庫存放路徑 (預設在當前目錄下的 postgres 資料夾)
DB_DATA_LOCATION=./postgres

# 設定資料庫密碼 (建議使用純英數字)
DB_PASSWORD=your_secure_password_123

# 資料庫使用者與資料庫名稱
DB_USERNAME=postgres
DB_DATABASE_NAME=immich

# 版本標籤 (預設 release 即為最新穩定版)
IMMICH_VERSION=release

3. 檢視 compose.yaml 核心架構​

Immich 由以下四個核心容器組成:

  • immich-server:主程式,提供 Web 介面、API 與相片處理。
  • immich-machine-learning:機器學習運算節點,負責人臉辨識與向量搜尋。
  • redis:處理非同步背景任務與佇列。
  • database:具備向量擴充模組 (pgvecto.rs) 的 PostgreSQL 資料庫。

4. 啟動服務​

sudo docker compose up -d

初始設定與手機 App 連線​

1. 網頁端建立管理員​

  1. 在瀏覽器打開:http://<VM_IP>:2283
  2. 點擊 Getting Started 建立第一個管理員帳號與密碼。
  3. 登入後即可進入主相簿介面。

2. 手機端 App 設定​

  1. 在 App Store 或 Google Play 搜尋並下載 Immich。
  2. 開啟 App,在 Server Endpoint URL 填入伺服器網址(例如 http://192.168.1.10:2283,或透過反向代理設定的 https://photos.yourdomain.com)。
  3. 輸入帳號密碼登入,並依照引導開啟自動備份相簿。

相關連結​