手机相册又塞满了?NAS一键部署最强私人相册工具Immich
大家好,我是飘雷。
很多喜欢折腾NAS的兄弟,最初买NAS的一大核心需求就是备份照片。
随着手机像素越来越高,几百G的手机内存动不动就告急。虽然有 iCloud、Google Photos 这样的云盘,但免费空间少得可怜,长期订阅扩容也是一笔不小的开销。
而传统的NAS自带相册软件,要么备份速度慢,要么AI人脸识别不够聪明,用起来总觉得差点意思。
那么,有没有什么办法能让我们在NAS上,拥有一个既能无感自动备份,又有聪明AI人脸识别,体验还能媲美Google Photos的相册服务呢?
今天咱们就来分享一款在Github上狂揽近110k收藏的免费开源工具——Immich,只要把它部署起来,你的NAS就瞬间化身为超大容量、极速响应的私人AI照片管家。

项目地址:
https://github.com/immich-app/immich
一、Immich是什么?
Immich是一个专为自建家庭网络设计的高性能照片和视频备份解决方案,它的UI界面和交互逻辑几乎可以视为Google Photos的像素级复刻,对于苦恼于手机内存不足、又追求极速相册体验的朋友来说,这绝对是一个能让你事半功倍的神器。

Immich拥有极为流畅的iOS和Android客户端,数万张照片的滑动浏览丝滑无比,没有任何卡顿感,而且内置了人脸识别,还支持基于大模型的语义搜索功能。
此外Immich还支持后台静默备份,我们在外面用手机拍了照,连上家里WiFi后,它就能在后台默默帮你传到NAS里。
而多账户互相隔离的功能Immich自然也有,我们可以给媳妇、老妈各开一个号,大家的私人照片互相隔离,但又能一键建立共享相册分享娃的日常。
今天咱们就手把手教大家,在NAS上把它跑起来。
二、NAS部署Immich流程
接下来我们来看看如何在NAS上通过Docker Compose的方式部署Immich。
Immich对于设备的硬件有一些要求,内存最少6GB、建议8GB以上,CPU最少2核,建议4核以上。这里用到的设备依然是威联通最新的8盘位旗舰型号Qu805,N355处理器性能强劲,搭配可替换的16GB内存,跑这种带AI机器学习的容器更是游刃有余。
如果用不到8盘位这么多的话,那么4盘位的Qu405和6盘位的Qu605也是性价比相当高的选择,还有售价更低的N150处理器版本可选。
我们依然使用Docker Compose的方式来部署最为方便,一键复制粘贴代码即可,非常轻松。
1. 准备数据文件夹
在部署前,我们需要在NAS里建好存放相册数据的文件夹。
打开威联通的文件管理器(File Station),建议在 /Container 目录下新建一个名为immich的文件夹。

然后再在里面分别新建三个子文件夹备用:
library (用于存放你备份的原始照片和视频)
postgres (用于存放数据库文件)
model-cache (用于存放AI模型)
2. 创建Docker Compose

打开威联通 Container Station,点击左侧的「应用程序」,然后点击右侧黑色「创建」按钮,输入以下代码:
services:
immich-server:
container_name: immich_server
image: ghcr.io/immich-app/immich-server:release
ports:
- "2283:2283"
depends_on:
- redis
- database
environment:
- DB_HOSTNAME=database
- DB_USERNAME=postgres
# 记得改成你的密码
- DB_PASSWORD=immich_piaolei_password
- DB_DATABASE_NAME=immich
- REDIS_HOSTNAME=redis
- TZ=Asia/Shanghai
volumes:
# 记得改成你的实际路径
- /share/Container/immich/library:/usr/src/app/upload
- /etc/localtime:/etc/localtime:ro
devices:
- /dev/dri:/dev/dri
restart: always
immich-machine-learning:
container_name: immich_machine_learning
image: ghcr.io/immich-app/immich-machine-learning:release
depends_on:
- database
environment:
- DB_HOSTNAME=database
- DB_USERNAME=postgres
# 必须和上方密码一致
- DB_PASSWORD=immich_piaolei_password
- DB_DATABASE_NAME=immich
- TZ=Asia/Shanghai
volumes:
- /share/Container/immich/model-cache:/cache
restart: always
redis:
container_name: immich_redis
image: docker.io/redis:6.2-alpine
restart: always
database:
container_name: immich_postgres
image: docker.io/pgvector/pgvector:pg16
environment:
# 必须和上方密码一致
POSTGRES_PASSWORD: immich_piaolei_password
POSTGRES_USER: postgres
POSTGRES_DB: immich
volumes:
- /share/Container/immich/postgres:/var/lib/postgresql/data
restart: always
这里有几个细节需要特别注意:
密码一致性:代码中有三处PASSWORD=immich_piaolei_password,请务必把它们统一改成你自己的密码,否则数据库连不上会报错。
路径映射:底下的 /share/Container/immich/... ,这里要替换成你NAS里实际新建文件夹的绝对路径。
网络环境:代码拉取了Github的 ghcr.io 和 docker.io 镜像,如果你的NAS处于国内无墙环境拉取超时,建议配合咱们前几期教程写过的中转代理工具配置网络环境。

点击「创建」后,耐心等待NAS拉取这4个镜像并部署完成,在Container Station中看到状态显示正在运行即可。

三、Immich的使用和配置
部署过程非常简单,部署完成后,我们在浏览器输入 http://:2283 (例如 http://192.168.10.70:2283),就能看到Immich极其清爽的欢迎界面了。

1. 初始化管理员账号
首次使用时,系统会让你创建一个管理员账号:

创建账号后,填入邮箱、密码和名字即可进入主界面,非常清爽流畅。

2. 手机端APP备份
我们可以在苹果App Store或安卓的Google Play搜索下载 Immich 客户端。

打开APP后,在服务器地址栏填入:http://192.168.10.70:2283。

登录账号后,点击右上角的云朵图标,选择你想备份的手机相册,赋予全部照片权限,就开启后台备份。
3. 关于AI人脸识别的补充说明
Immich的机器学习(Machine Learning)容器在首次运行时,会在后台自动下载AI模型文件到我们映射的model-cache文件夹。由于模型服务器在国外,首次下载可能会比较慢。
如果发现人脸识别或者语义搜索还没生效,别着急,给它一点时间或者在NAS上配置好网络魔法环境,等模型下载完成,就会惊艳于它那强悍且精准的照片分类能力。
如果实在是不方便给NAS使用魔法,那么还可以使用PC下载模型文件,然后手动上传到NAS的model-cache文件夹中,彻底避开海外下载失败问题。
在model-cache文件夹中,语义搜索和人脸识别的模型目录架构是这样的:
model-cache/
├─ clip/ # 智能语义搜索CLIP模型目录
│ └─ ViT-B-32__openai/ # 默认英文搜索模型
└─ facial-recognition/ # 人脸识别模型目录
└─ buffalo_l/ # 默认人脸模型
我们可以到国内的镜像站下载模型文件,按照上述架构放好model.onnx文件即可。
总结
总体来说,Immich它完美地解决了传统NAS相册速度慢、UI丑、无AI的痛点,替咱们完成了耗时繁琐的相册整理工作,而且双端体验都做得相当出色。
如果你也被手机存储空间不足折磨过,强烈建议花个几分钟把它部署在NAS里试试,能让你省下许多升级手机存储容量的预算。
以上就是本期的全部内容了,如果大家在部署过程中遇到什么问题,欢迎在评论区留言交流。也欢迎给飘雷来个点赞、收藏加关注三连击,我们下期再见!
