Synology的相簿軟體越作越難用,來安裝開源的相簿軟體 immich 試看看。immich 無法直接從套件中心裡面安裝,必須是以容器形式運行在NAS上。immich官方建議以docker-compose的方式進行安裝,以下文章參考 Synology [Community] 的步驟來進行。
前置作業
建立一個共用資料夾 immich-app 用來存放容器設定檔及環境變數
在這個共用資料夾下先建立immich資料夾後,再建立兩個子資料夾
postgres 用來存放 postgres 資料庫檔案
library immich 相關資料存放路徑(包含上傳照片的資料夾),結構如下所示
在immich-app共用資料夾中下載docker-compose.yml及example.env,然後存放到step1建立的共用資料夾中,example.env請更名為 .env。下圖我是使用ssh連進NAS主機,使用curl指令遠端下載。亦可使用其他方式下載後再放入NAS。
curl -o docker-compose.yml -L https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
curl -o .env -L https://github.com/immich-app/immich/releases/latest/download/example.env
修改 .env 下列環境變數,尤其 postgres db 記得密碼預設值修改掉
UPLOAD_LOCATION=./immich/library
DB_DATA_LOCATION=./immich/postgres
TZ=Asia/Taipei
DB_PASSWORD=[YourOwnDBPassword]
修改docker-compose.yml
移除 database 區段中的 start_interval: 30
Container Manager 設定
打開 Container Manager,點進專案,新增一個專案
專案名稱可以自訂,設定路徑則選至Step 1建立的共用資料夾(也就是docker-compose.yml所在路徑)
設定精靈會自動找到docker-compose.yml,下方並顯示docker-compose.yml的內容
按了下一步就自動發現該目錄有docker-compose.yml
自動載入docker-compose.yml內容顯示,下一步
WebStation設定直接跳過忽略,下一步
設定一覽,按下完成
自動下載所需容器映象檔,並解開儲存
專案所需容器啟動成功
檢視所有使用容器狀態
immich 管理介面
連結 http://[NAS_IP]:2283,應該就可以看到immich的一朵花 LOGO,按下開始使用就可以進行初始化,這邊就不多加贅述。
添加immich外部相片圖庫
在.env中新增一個外部相簿庫的路徑變數EXTERNAL_LOCATION,路徑請指向自己欲添加外部相簿庫的最上層
請確認外部圖庫的儲存空間號碼,例如圖庫如果位於儲存空間1,對應的實際路徑就會是/volume1
EXTERNAL_LOCATION=/volume1/photo
同步在 docker-compose.yml 的immich-server區段中,volumes子區段中也新增對應的容器內外目錄的映射設定,並指向剛剛.env中新增的EXTERNAL_LOCATION變數
- ${EXTERNAL_LOCATION}:/usr/src/app/external
設定好應該是這個樣子
回到Container Manager,停止並清除Immich這一個專案的容器
重新建立Immich專案,用以重新載入剛剛在 docker-compose.yml 新增的外部圖庫設定
重新建立成功
回到immich Web管理介面,從右上角的「管理」中新增外部圖庫
輸入剛剛docker-compose.yml中新增容器內外目錄的映射設定中,內部目錄的路徑,也就是/usr/src/app/external
如果有設定成功,前面應該會是一個綠色的勾勾,如果沒設定成功,則前面應該會是一個驚嘆號
此時就可以去掃描外部圖庫囉
透過HyperBackup進行備份
由於容器所有使用的docker-compose.yml/環境變數檔,資料庫檔案及相片資料皆已映射到Synology的共用資料夾中,所以只需要很簡單的備份immich-app這個共用資料夾及外部圖庫資料夾即可。
Pingback: Immich 相簿地理位置如何改以中文顯示? – 隨想意誌