PassNAT LogoPassNAT

自托管私人相册HomeGallery,AI智能识别,NAS极简部署,内网穿透远程访问

作者

小编

发布时间

Curving abstract shapes with an orange and blue gradient

项目介绍

HomeGallery 是一款自托管的开源网络相册应用,专为私人照片和视频浏览而设计。它集成了AI驱动的图像识别、人脸检测、相似图搜索等高级功能,同时提供标签管理、地理位置反向查询、PWA移动应用支持等丰富特性。

这个项目特别适合那些重视隐私、希望完全掌控自己媒体数据的用户。所有照片和视频都存储在你的本地NAS或服务器上,无需依赖任何云服务。界面简洁易用,在手机上也能获得流畅的浏览体验。支持超大规模媒体库,用户已成功管理超过40万张照片。

项目地址:点我跳转

部署安装

若要在家外也能访问你的相册库,建议配置内网穿透服务。推荐使用 帕斯内网穿透,先行注册账号以备后用。详细的配置步骤可参考 全平台快速上手指南,能够帮你轻松实现远程访问。

使用 Docker Compose 快速部署

这是最推荐的部署方式,包含了完整的AI识别服务。

复制以下配置文件到你的NAS或服务器,创建一个 `docker-compose.yml` 文件:

1version: '3.9'
2services:
3 api:
4 image: xemle/home-gallery-api-server
5 environment:
6 - BACKEND=wasm
7 gallery:
8 image: xemle/home-gallery
9 environment:
10 - GALLERY_API_SERVER=http://api:3000
11 - GALLERY_API_SERVER_CONCURRENT=1
12 - GALLERY_API_SERVER_TIMEOUT=60
13 - GALLERY_OPEN_BROWSER=false
14 - GALLERY_WATCH_POLL_INTERVAL=300
15 volumes:
16 - ./data:/data
17 - ${HOME}/Pictures:/data/Pictures
18 ports:
19 - '3000:3000'
20 user: '${CURRENT_USER}'
21 entrypoint: ['node', '/app/gallery.js']
22 command: ['run', 'server']

打开你的飞牛NAS、群晖NAS或其他NAS设备,进入Docker管理界面。

第一步:导入镜像

点击「本地镜像」-「添加镜像」-「从URL添加」,分别添加以下两个镜像: - `xemle/home-gallery-api-server`(AI识别服务) - `xemle/home-gallery`(主应用) 等待两个镜像下载完成。

第二步:配置并启动容器

使用上面的docker-compose配置文件启动服务。如果你的NAS不支持docker-compose,可以分别启动两个容器。

第三步:端口配置

系统会自动使用 `3000` 端口。如果该端口已被占用,你可以修改配置中的 `3000:3000` 为其他端口,例如 `8080:3000`(前面的数字是外部访问端口,后面的是容器内端口,容器内端口必须保持为3000)。

第四步:存储位置设置

创建一个本地文件夹用于存储相册数据和缓存文件。将 `./data` 目录映射到你NAS上的某个位置,例如 `/mnt/data/home-gallery`。 同时,将你的照片和视频目录映射进去。如果你的照片存放在 `/mnt/photos` 目录下,修改配置中的 `${HOME}/Pictures:/data/Pictures` 为 `/mnt/photos:/data/Pictures`。

第五步:环境变量说明

必须配置的环境变量: - `GALLERY_API_SERVER`: AI服务地址,默认为 `http://api:3000`(使用docker-compose时无需修改) 可选配置,根据设备性能调整: - `GALLERY_API_SERVER_CONCURRENT`: 并发请求数。树莓派等低功耗设备建议设为 `1`,普通NAS可设为 `5` - `GALLERY_API_SERVER_TIMEOUT`: 超时时间(秒)。树莓派建议 `60`,普通设备可设为 `30` - `GALLERY_WATCH_POLL_INTERVAL`: 文件监控轮询间隔(毫秒),默认 `300` 适合网络挂载 - `BACKEND`: AI后端类型,可选 `cpu`(最兼容)、`wasm`(推荐)、`node`(最快但仅x86-64) 其他变量保持默认即可,无需手动修改。

第六步:启动服务

点击启动按钮,勾选「开机自动启动」。 等待容器启动完成后,在浏览器中访问 `http://你的NAS地址:3000` 即可打开HomeGallery相册。 首次启动时,系统会自动扫描和处理你的照片库,生成缩略图并进行AI分析。这个过程可能需要一些时间,取决于你的媒体库大小。

使用 Docker 单命令部署(简化版)

如果你只想快速体验而不需要AI识别功能,可以使用以下单命令:

1docker run -d \
2 -v /path/to/your/photos:/data/Pictures \
3 -v home-gallery-data:/data \
4 -p 3000:3000 \
5 xemle/home-gallery

将 `/path/to/your/photos` 替换为你实际的照片目录路径。

本篇教程到此结束。现在你已经拥有了一个功能完整的私人相册库,所有数据都掌握在自己手中!