前言
你有没有这样的经历?
手机相册里存着上千张照片——孩子的第一次走路、全家旅行的夕阳、父母笑着切生日蛋糕……可它们却散落在不同设备、不同云盘,甚至有些早已被自动清理或误删。想翻看某一年的春节合影,得在微信、iCloud、旧手机和电脑之间来回切换,费时又心累。
更让人不安的是:这些承载着家庭记忆的照片,正静静地躺在第三方服务器上。你不知道它们是否被分析、是否会被泄露,甚至哪天平台关停,回忆就永远消失了。
其实,我们值得一种更好的方式——把珍贵的瞬间,真正留在自己手中。
现在,借助一台家用NAS和开源项目Immich,你可以在家搭建一个私有、智能、安全的数字相册系统:
- 手机拍完照,自动备份到本地;
- AI 自动人脸识别,快速找到“宝宝”或“爷爷”的所有照片;
- 按时间线浏览,像翻实体相册一样自然;
- 数据不上传任何公有云,隐私完全由你掌控。
更重要的是,这一切只需一行docker-compose up,就能轻松实现。
本文将手把手带你部署Immich,配置自动备份,并打造一个属于你和家人的“数字记忆博物馆”。从此,每一张照片都有归处,每一段回忆都安然无恙。
1.什么是Immich?
💕核心特点:
完全私有,数据自主
- 所有照片、视频、元数据都保存在你自己的设备上(如群晖、TrueNAS、Linux 服务器等)
- 不上传到任何第三方云服务,杜绝隐私泄露风险
智能功能强大
- 人脸识别:自动识别人物并分组(支持手动标注)
- 时间线视图:按年/月/日浏览,像翻实体相册
- 地图视图:基于照片 GPS 位置展示足迹
- 对象识别(实验性):识别“狗”“汽车”“海滩”等场景(需启用 AI 模型)
多端同步 & 自动备份
- 官方提供 iOS 和 Android App
- 支持后台自动上传(可设仅 Wi-Fi、仅充电时)
- Web 端功能完整,支持拖拽上传、批量管理
技术先进,性能出色
- 使用 TypeScript + React(前端),NestJS + PostgreSQL + Redis(后端)
- 媒体文件直接存储在本地磁盘(不依赖数据库存二进制)
- 支持 硬件转码(Intel Quick Sync / NVIDIA NVENC)加速视频预览
部署简单,生态友好
- 官方提供完整的 docker-compose.yml,一行命令即可启动
- 支持 ARM 架构(树莓派、Mac M1/M2 友好)
- 可通过 WebDAV 导入现有照片库
- 社区活跃,GitHub 超 65k+ stars(截至 2026 年)
| 用户类型 | 使用方式 |
|---|---|
| 家庭用户 | 在 NAS 上部署 Immich,全家手机自动备份,爷爷奶奶也能通过网页看孙子照片 |
| 摄影爱好者 | 替代 Google Photos,保留原始 RAW/JPEG 文件,无压缩、无删减 |
| 隐私倡导者 | 拒绝大厂数据收集,掌控自己的数字记忆 |
| 极客/DIY 玩家 | 搭配 Homepage、cpolar、Tailscale,打造完整的家庭数字中枢 |
2.安装前提条件
2.1ssh远程连接到飞牛
- 开启【SSH 服务】
- 使用终端(Windows PowerShell / Mac Terminal)登录:
在设置—>SSH中开启SSH服务:
2.2验证docker是否开启
使用命令:
docker -v
systemctl status -v
也可以直接在飞牛主页查看(其他机器也是这样的哦~)
3.部署Immich
3.1 安装Immich
进入名为immich-app的目录,从Immich官方GitHub最新发布版 下载标准的docker-compose.yml文件,并保存为当前目录下的docker-compose.yml:
cd immich-app
wget -O docker-compose.yml https://github.com/immich-app/immich/releases/latest/download/docker-compose.yml
wget -O .env https://github.com/immich-app/immich/releases/latest/download/example.env
下载完所有文件后,使用Docker Compose启动Immich服务:
docker-compose up -d
部署完成后,在浏览器中输入 http://飞牛IP:2283 就能看到cAdvisor的界面:
3.2 使用Immich
使用邮箱注册用户:
注册后,一路默认安装:
完成后,来到存储页面:
上传图片:
上传图片后,我们能看到,日期也是分明的:
也可以使用关键字搜索图片:
我们来创建相薄:
上传照片:
创建完成:
还可以隐藏图片:
收藏图片:
更多好的功能,等你慢慢挖掘吧!
在本地NAS部署Immich,虽然能安全地将全家照片归档于私有设备,但一旦出门在外,想快速查看某张孩子的照片或分享旅行回忆,却因没有公网IP而束手无策。此时,cpolar 成为打通内网与外网的关键桥梁——它无需复杂配置,只需一条命令,就能为Immich的Web服务(默认端口2283)创建一条加密的HTTPS隧道,生成一个临时或固定的公网访问地址。无论你在咖啡馆、机场还是客户现场,只要打开浏览器,输入cpolar提供的链接,即可像在家一样流畅浏览、搜索甚至分享相册,而所有数据始终留在你的NAS中,真正实现“回忆随行,隐私无忧”。
4.安装cpolar实现随时随地开发
4.1 什么是cpolar?
cpolar是一款安全高效的内网穿透工具,无需公网IP或复杂配置,只需一条命令,即可将本地服务器、Web服务或任意端口映射到公网,让你随时随地远程访问内网应用,特别适合开发调试、远程运维和应急部署等场景。
4.2 部署cpolar
cpolar 可以将你本地电脑中的服务(如 SSH、Web、数据库)映射到公网。即使你在家里或外出时,也可以通过公网地址连接回本地运行的开发环境。
❤️以下是安装cpolar步骤:
使用一键脚本安装命令:
sudo curl https://get.cpolar.sh | sh
安装完成后,执行下方命令查看cpolar服务状态:(如图所示即为正常启动)
sudo systemctl status cpolar
Cpolar安装和成功启动服务后,在浏览器上输入虚拟机主机IP加9200端口即:【http://ip:9200】访问Cpolar管理界面,使用Cpolar官网注册的账号登录,登录后即可看到cpolar web 配置界面,接下来在web 界面配置即可:
打开浏览器访问本地9200端口,使用cpolar账户密码登录即可,登录后即可对隧道进行管理。
5.配置公网地址
登录cpolar web UI管理界面后,点击左侧仪表盘的隧道管理——创建隧道:
- 隧道名称:可自定义,本例使用了:Immich,注意不要与已有的隧道名称重复
- 协议:http
- 本地地址:2283
- 域名类型:随机域名
- 地区:选择China Top
创建成功后,打开左侧在线隧道列表,可以看到刚刚通过创建隧道生成了公网地址,接下来就可以在其他电脑或者移动端设备(异地)上,使用地址访问。
访问成功。
6.保留固定公网地址
使用cpolar为其配置二级子域名(cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站),该地址为固定地址,不会随机变化。
点击左侧的预留,选择保留二级子域名,地区选择china Top,然后设置一个二级子域名名称,我使用的是Immich,大家可以自定义。填写备注信息,点击保留。
登录cpolar web UI管理界面,点击左侧仪表盘的隧道管理——隧道列表,找到所要配置的隧道,点击右侧的编辑。
修改隧道信息,将保留成功的二级子域名配置到隧道中
- 域名类型:选择二级子域名
- Sub Domain:填写保留成功的二级子域名
- 地区: China Top
点击更新
更新完成后,打开在线隧道列表,此时可以看到随机的公网地址已经发生变化,地址名称也变成了保留和固定的二级子域名名称。
最后,我们使用固定的公网地址在任意设备的浏览器中访问,可以看到成功访问的页面,这样一个永久不会变化的二级子域名公网网址即设置好了。
总结
在这个数字影像泛滥却极易流失的时代,家庭照片往往散落在手机、电脑、社交平台和各类云盘中,既难以整理,又存在隐私泄露与数据丢失的风险。通过在NAS上部署开源项目Immich,我们终于拥有了一个真正属于自己的“数字记忆中枢”——它不仅支持人脸识别、时间线浏览、自动备份等现代化相册体验,更将所有珍贵瞬间牢牢掌控在本地,彻底告别对第三方云服务的依赖而借助cpolar内网穿透,即使身处户外,也能安全、流畅地访问家中的私有相册,实现“回忆随行,数据归家”。这不仅是一次技术实践,更是对家庭记忆的一份郑重守护:照片不再散落各处,每一段时光,都有归处。
感谢您对本篇文章的喜爱,有任何问题欢迎留言交流。cpolar官网-安全的内网穿透工具 | 无需公网ip | 远程访问 | 搭建网站






































