
jwater7/responsive-photo-galleryresponsive-photo-gallery是一个基于NodeJS和Express框架的后端服务,旨在以移动友好且美观的方式展示照片集。默认在3000端口启动Web服务器,支持通过Docker容器快速部署或作为Node模块运行。提供照片浏览、缩略图缓存、API认证等功能,并可通过环境变量灵活配置。
/api-docs/),方便API调试通过Docker容器快速部署,需挂载照片目录和持久化存储目录:
bashdocker run -d --name responsive-photo-gallery \ -v '/path/to/album/folders:/images:ro' \ # 本地照片目录(只读挂载) -v '/your/persistent/storage/dir:/data:rw' \ # 持久化存储目录(配置、缩略图等,读写挂载) -p 8000:3000 \ # 端口映射(本地8000端口映射到容器3000端口) jwater7/responsive-photo-gallery
部署完成后,通过浏览器访问http://localhost:8000即可使用照片库服务。
如需本地开发或自定义,可作为Node模块运行:
bash# 安装依赖 npm install cd frontend npm install cd .. # 构建前端资源 npm run build-frontend # 启动服务 npm start
通过环境变量自定义服务行为,支持以下参数:
| 环境变量 | 默认值 | 说明 |
|---|---|---|
| SWAGGER_ROOT_PATH | '' | 设置Swagger文档的API根路径 |
| PORT | 3000 | 设置Express服务器监听端口 |
| DEFAULT_PASSWORD | 随机base64字符串 | 默认API管理员密码(会写入配置文件) |
| DEFAULT_PRIVATE_KEY | 随机base64字符串 | JWT签名密钥(确保重启后一致性) |
| PRIVATE_KEY | 随机base64字符串 | 覆盖JWT签名密钥,设置新密钥 |
| AUTH_PATH | '/data/auth' | 认证数据持久化目录路径 |
| IMAGE_PATH | '/images' | 照片存储目录路径 |
| THUMB_PATH | '/data/thumbs' | 缩略图缓存持久化目录路径 |
| DEBUG | - | 启用调试输出,可指定模块(如DEBUG=express,responsive-photo-gallery:*) |
| NO_AUTHENTICATION | false | 设为"yes"时禁用认证,所有用户可访问只读API |
| 环境变量 | 默认值 | 说明 |
|---|---|---|
| PUBLIC_URL | '' | Web请求前缀路径(用于反向代理子目录部署) |
| REACT_APP_BASENAME | '/'(若PUBLIC_URL存在则使用其值) | React路由的URL前缀 |
| REACT_APP_API_PREFIX | '/'(若PUBLIC_URL或REACT_APP_BASENAME存在则使用其值) | API调用的URL前缀 |





manifest unknown 错误
TLS 证书验证失败
DNS 解析超时
410 错误:版本过低
402 错误:流量耗尽
身份认证失败错误
429 限流错误
凭证保存错误
来自真实用户的反馈,见证轩辕镜像的优质服务