大家好,這里是Cherry,喜愛折騰、撿垃圾、玩數(shù)碼,熱衷于分享NAS、docker玩耍經(jīng)驗~

前言

家庭相冊管理一直是我們?nèi)粘I畹男枨?,不論是為了緩解“岌岌可?!钡氖謾C容量,還是打造家庭、兒童成長相冊,或者是對攝影圖片進行保存、匯總,都不可避免的需要接觸到種類繁多的數(shù)碼相冊軟件。

一般來說,蘋果用戶會選擇icloud作為手機存儲和管理工具,安卓用戶則會選擇google photos,也有一部分用戶選擇網(wǎng)盤工具來管理和上傳照片,雖然方便,但是卻有幾個缺點。一個是相冊上云,隱私不在;二是存儲越來越多,費用越來越高。

那么,如何避免這些問題呢?答案很簡單,那就是自建免費的相冊管理工具,讓全家的照片統(tǒng)統(tǒng)存在NAS或電腦里。


一、NAS原生相冊和開源相冊怎么選?

1、哪些NAS的自帶相冊比較不錯。

有NAS的人都知道,無論是群暉、極空間、威聯(lián)通,還是綠聯(lián)、海康、華為等,都擁有自己的相冊管理軟件,并且擁有配套的APP和客戶端。

其中,Cherry比較推薦的原生相冊管理軟件有群暉、極空間、威聯(lián)通,這三款NAS自帶的相冊軟件無論是適配性、易用性都很不錯,其中極空間的極相冊最優(yōu)秀,支持家庭相冊、兒童成長相冊等多功能,支持高性能的AI分析功能;威聯(lián)通支持快速檢測、使用方便程度稍遜極空間一些;群暉新版的photos則是萬金油應(yīng)用,沒有太出色,但是各方面都可圈可點。如果購買了這三款NAS的,基本用自己的系統(tǒng)就可以了。

綠聯(lián)的話APP本身功能是足夠的了,挺好用,不過AI自定義模型訓(xùn)練上依舊有些問題??梢栽俚鹊裙俜絻?yōu)化再使用。剩下的NAS品牌相冊功能就比較一般了,開源完全可以代替。

2、開源相冊怎么選?

目前主流的開源相冊分別是immich、photoprism、ente、荔枝、piwigo等。這里主要可以拿來說一下的就是immich、photoprism、ente三款,剩下的比較簡易和輕量化,適合照片數(shù)量不多的人使用。

Photoprism:

在幾年前photoprism用的人還是挺多的,和immich可以一較上下,雖然支持AI分類、搜索,但是不支持clip,導(dǎo)致使用人數(shù)已經(jīng)越來越低了,而且其亞洲人臉識別率很低

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

Ente:

Google Photos的模仿者,擁有端對端加密的特點,本身可以看作是一款商用軟件,支持空間付費等。不過成也蕭何敗也蕭何,端對端加密讓應(yīng)用幾乎無法和其它應(yīng)用去聯(lián)動,所以對于個人用戶而言,反而不是很友好。

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

Immich:

開源相冊系統(tǒng)中的T0,也幾乎是用戶的唯一選擇。7月19日,immich宣布了關(guān)于軟件收費的公告,不過說收費,更多的應(yīng)該是捐贈后給予一個身份認證的意思,就算普通用戶不捐贈,依舊可以無償使用immich的所有服務(wù)。

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

之后,immich新版本中,在左下角增加了未經(jīng)授權(quán)的字樣,雖然這個未經(jīng)授權(quán)不是強制的,但是讓用戶感覺很不舒服,于是有大佬給出了自定義CSS修改方案,同時,這個決定這讓開發(fā)團隊在github上被狠狠的吐槽了一番。

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

不過好的是,immich聽取了社區(qū)的意見,在隨后的更新中決定取消未授權(quán)字樣。目前最新的v1.111版本中,已經(jīng)完全沒有相關(guān)提示了。

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

本文基于immich最新v1.111.0版本,重新介紹如何安裝這一套開源相冊管理工具,并且通過一系列的DIY手段,解決外部存儲、中文Clip、人臉識別、顯卡轉(zhuǎn)碼加速、中文地圖等等問題。


二、Immich系統(tǒng)部署方法

1、導(dǎo)入鏡像

如果無法訪問docker下載地址的,可以通過本網(wǎng)盤下載鏡像壓縮包(exe格式),解壓為tar格式以后上傳至NAS的自定義路徑。然后通過NAS的鏡像導(dǎo)入功能導(dǎo)入,或通過ssh輸入以下指令導(dǎo)入??

阿里:/kK4M9gHgFz7

提取碼: tr40

# path代表真實路徑,XXX.tar代表鏡像壓縮包

docker load -i /path/XXXX.tar

2、compose代碼

新建文件夾路徑/volume1/docker/immich,在目錄下新建或上傳【docker-compose.yml】文件,復(fù)制compose代碼并修改

version: "3.8"

name: immich

services:

immich-server:

container_name: immich_server

image: ghcr.io/immich-app/immich-server:${IMMICH_VERSION:-release}

volumes:

- ${UPLOAD_LOCATION}:/usr/src/app/upload

# 如果怕修改原有照片,最后加上ro,否則刪除ro

- ${PHOTOS_LOCATION}:/usr/src/app/external:ro

- /etc/localtime:/etc/localtime:ro

env_file:

- .env

ports:

- 2283:3001

depends_on:

- redis

- database

restart: always

immich-machine-learning:

container_name: immich_machine_learning

# 不同硬件可以在鏡像后增加[armnn, cuda, openvino] 標簽,比如支持cuda的獨立顯卡加速,可以為 ${IMMICH_VERSION:-release}-cuda

image: ghcr.io/immich-app/immich-machine-learning:${IMMICH_VERSION:-release}

# 下面的代碼開啟核顯轉(zhuǎn)碼加速

# devices:

# - /dev/dri:/dev/dri

volumes:

# 這個目錄存放AI模型

- /volume1/docker/immich/model:/cache

restart: always

redis:

container_name: immich_redis

image: library/redis:6.2-alpine

restart: always

database:

container_name: immich_postgres

image: tensorchord/pgvecto-rs:pg14-v0.2.0

environment:

POSTGRES_PASSWORD: ${DB_PASSWORD}

POSTGRES_USER: ${DB_USERNAME}

POSTGRES_DB: ${DB_DATABASE_NAME}

POSTGRES_INITDB_ARGS: '--data-checksums'

volumes:

#自定義data位置

- ${DB_DATA_LOCATION}:/var/lib/postgresql/data

restart: always

command: ["postgres", "-c" ,"shared_preload_libraries=vectors.so", "-c", 'search_path="$$user", public, vectors', "-c", "logging_collector=on", "-c", "max_wal_size=2GB", "-c", "shared_buffers=512MB", "-c", "wal_compression=on"]

同一個路徑下,增加【.env】文件,代碼如下

TZ=Asia/Shanghai

IMMICH_VERSION=release

HF_ENDPOINT=https://hf-mirror.com

# 自定義的上傳照片存放路徑,群暉需要先創(chuàng)建好

UPLOAD_LOCATION=./library

# 自定義的數(shù)據(jù)庫存放路徑,群暉需要先創(chuàng)建好

DB_DATA_LOCATION=./postgres

# 自定義的外部庫存放路徑

PHOTOS_LOCATION=/volume1/homes/name/Photos/

# 下面修改數(shù)據(jù)庫賬號密碼等信息

DB_PASSWORD=postgres

DB_USERNAME=postgres

DB_DATABASE_NAME=immich

3、各NAS系統(tǒng)部署項目方法

方法一:通用SSH部署compose(NAS、服務(wù)器、PC通用)

# 來到文件夾目錄

cd /volume1/docker/容器名/

# 啟動容器

docker-compose up -d

方法二:群暉部署compose

打開Container Manager,選擇項目,點擊新建,選擇路徑,點擊下一步即可

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

方法三:威聯(lián)通部署compose

打開Container Station,選擇【應(yīng)用程序】,點擊【創(chuàng)建】,將代碼復(fù)制進去,點擊驗證后部署即可

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

方法四:鐵威馬部署compose

打開Docker Manager,選擇【項目】,點擊【+】,選擇文件路徑以后,填入代碼即可

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具


三、Immich完整版配置方法

Storage Template功能建議大家不要開啟,這樣可以保持原有的文件格式。

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

首先我們來切換中文界面,點擊右上角賬號,選擇【Account Settings】-【Language】,把【English】切換成【Chinese (Simplified)】

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

一、外部庫解決群暉重復(fù)照片問題

接著,我們來引入外部圖庫,即原來通過其它方式傳入NAS的圖片,我們都可以將它們引入為immich的外部圖庫,進行集中管理。

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

點擊新建圖庫最右側(cè)的【…】,選擇【編輯導(dǎo)入路徑】,然后把我們在compose代碼里設(shè)置的容器內(nèi)路徑填入,比如本文中的【/usr/src/app/external】。

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

完成以后,針對群暉用戶,點擊【掃描設(shè)置】,填入【**/SYNOPHOTO_*.** 】、【**/@eaDir/*】等等,這個是群暉photos默認生成的縮略圖、縮略視頻。如果不排除,immich會把群暉的低質(zhì)量照片掃描4份左右,而且無法通過重復(fù)文件刪除,特別麻煩。其它系統(tǒng)可以根據(jù)自定義忽略內(nèi)容,比如、【**/tmp/*】。

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

這兩個設(shè)置好以后,點保存,然后依舊點【…】,選擇【掃描新的圖片文件】

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

然后捏,我們就可以在immich里看到含群暉原有相冊在內(nèi)的照片啦。

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

二、解決模型無法下載,以及無法使用中文clip問題

目前的版本,不論是clip還是人臉都需要從hugging face下載,國內(nèi)網(wǎng)絡(luò)不通,加上鏡像庫也無法下載。因此要使用AI功能,我們需要先下載模型。

支持中文clip的模型【XLM-Roberta-Large-Vit-B-16Plus】,人臉識別的模型【buffalo_l】,國內(nèi)可以通過下面的鏡像站訪問,也可以通過cherry的網(wǎng)盤下載。

# 網(wǎng)盤

阿里云盤:s/kK4M9gHgFz7

提取碼: tr40

# 抱臉蟲的鏡像站

https://hf-mirror.com/immich-app/

最終的路徑如下

# 自然語言檢索的路徑

.../cache/clip/XLM-Roberta-Large-Vit-B-16Plus

# 多模態(tài)CLIP

.../cache/Multilingual CLIP/XLM-Roberta-Large-Vit-B-16Plus

文件夾路徑示例,可以參照這個

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

保存以后如果日志有提示說明正確

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

完成以后,記得到任務(wù)里去跑一下智能搜索,如果照片多的話,會使用很長時間,而且因為是cpu跑的,基本NAS就做不了其他事情了。

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

分別搜索【女孩】、【馬】、【太陽】,可以正確檢索出相關(guān)的圖片并排序。

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具
Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具
Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

三、增加顯卡加速

顯卡加速一共有2個用途,一個是給AI算法加速(之前代碼備注了,有cuda鏡像可以下載,這里就不討論了),一個是給轉(zhuǎn)碼加速。常規(guī)的NAS因為無法外置顯卡,采用的都是核顯,所以只能轉(zhuǎn)碼加速,方法和emby等一樣,增加/der/dri即可。

在代碼里已經(jīng)說明了,需要核顯加速的取消#備注即可

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

重新創(chuàng)建immich堆棧,完成以后,來到【設(shè)置】-【視頻轉(zhuǎn)碼設(shè)置】

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

打開【硬件加速】-【加速器API】-【快速同步(Quick Sync)】就ok了,記得保存哦

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

四、增加中文地圖

給immich增加中文地圖的方法,是對地圖樣式進行修改。根據(jù)值友@范先森94的方法,注冊MapTiler并生成樣式即可。

登錄并注冊MapTiler,選擇【newmap】

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

在頁面上選擇右下角的【CUSTOMIZE】。進入下面的頁面后,點擊左側(cè)把語言更改為中文

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

選擇自己所在地區(qū),點擊【定位】按鈕固定默認位置

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

點擊右上角Save保存

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

點擊publish發(fā)布地圖

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

完成以后退回上一頁,選擇紅框內(nèi)的style,點擊復(fù)制

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

回到immich,路徑【管理】-【設(shè)置】-【地圖與GPS設(shè)置】,把地圖復(fù)制到淺色模式下保存。

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

可以看到,已經(jīng)默認為我們設(shè)置的地圖樣式和定位了

Immich收費了?25刀!后知后覺的我,分享幾個方法DIY這款最強家庭照片管理工具

作者聲明本文無利益相關(guān),歡迎值友理性交流,和諧討論~

,

聲明:本站所有文章,如無特殊說明或標注,均為本站原創(chuàng)發(fā)布。任何個人或組織,在未征得本站同意時,禁止復(fù)制、盜用、采集、發(fā)布本站內(nèi)容到任何網(wǎng)站、書籍等各類媒體平臺。如若本站內(nèi)容侵犯了原著者的合法權(quán)益,可聯(lián)系我們進行處理。