ChronoFrame 是国产开发者维护的自托管相册,方向不是「备份工具」,而是「摄影作品集」:瀑布流、WebGL 缩放、Live Photo、地图足迹、带密码的相册,界面干净。它只有一个容器,一条命令就能上线。
一、为什么值得试
- Nuxt 4 + Vue 编写,前后端一体,部署极其简单。
- 支持 Live Photo(同名 JPG/HEIC + MOV 自动配对)、EXIF、地点反查。
- 相册可隐藏、可加密码,适合只公开一部分内容。
- 存储可选本地、S3 兼容对象存储、OpenList,后台随时切换。
- AGPL-3.0,代码开放,已被 HelloGitHub 推荐。
二、镜像与端口
| 项目 | 值 |
|---|---|
| 镜像(GHCR) | ghcr.io/hoshinosuzumi/chronoframe:latest |
| 镜像(Docker Hub) | hoshinosuzumi/chronoframe:latest |
| Web 端口 | 3000 |
| 数据目录 | /app/data(数据库、设置、本地照片) |
三、Compose 部署
mkdir -p /opt/chronoframe && cd /opt/chronoframe
新建 docker-compose.yml:
services:
chronoframe:
image: ghcr.io/hoshinosuzumi/chronoframe:latest
container_name: chronoframe
restart: unless-stopped
ports:
- "3000:3000"
volumes:
- ./data:/app/data
environment:
TZ: "Asia/Shanghai"
docker compose up -d
docker compose logs -f chronoframe
打开 http://服务器IP:3000,会进入安装向导。
四、安装向导
- 创建管理员账号(邮箱 + 密码)。
- 填写站点名称、地址(例如
https://photos.example.com)。 - 选择存储:本地存储填
/app/data/storage;用 S3 或 OpenList 就填对应的 endpoint、bucket、key。 - 地图功能需要 MapLibre / Mapbox 的 token,可以先跳过,之后在后台补。
完成后登录,进入 /dashboard 上传照片。上传后任务队列会自动处理 EXIF、缩略图、地点和 Live Photo,失败的任务可以点重试。


五、反向代理与 HTTPS
server {
listen 443 ssl http2;
server_name photos.example.com;
ssl_certificate /etc/letsencrypt/live/photos.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/photos.example.com/privkey.pem;
client_max_body_size 2000M;
proxy_read_timeout 600s;
location / {
proxy_pass http://127.0.0.1:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
官方要求公网部署使用 HTTPS,否则登录 Cookie 和上传都会出问题。
六、备份与升级
- 备份:整个
./data目录就是全部(SQLite、设置、本地照片)。用 S3 时,备份./data加桶即可。 - 升级:
docker compose pull && docker compose up -d。想固定版本就把latest换成v1.0.0这类 tag。 - 迁移:把
./data拷到新机器,同样的 Compose 启动即可。
七、常见问题
Live Photo 不播放? 图片与 MOV 必须同名(如 IMG_1234.heic 与 IMG_1234.mov),并且都上传成功。
相册密码能防住直链吗? 密码只控制 ChronoFrame 的访问;如果 S3/CDN 暴露了公开 URL,还需要在对象存储侧控制权限。
地图不显示? 安装时跳过了地图 token,去后台补一个 MapLibre/Mapbox token 即可。
八、小结
ChronoFrame 更像「个人摄影站 + 家庭相册」的结合体,轻、快、好看,部署成本是所有方案里最低的。缺点是生态还年轻,手机自动备份、AI 搜索这类能力不如 Immich。
相关阅读:Immich 部署教程 · 2026 开源家庭相册横评

