收起左侧

拒绝微信传图!我做了个极简自托管相册,支持多用户、滑动预览、管理员一键打包

0
回复
59
查看
[ 复制链接 ]

2

主题

2

回帖

0

牛值

江湖小虾

上次分享了个人助理工具箱后,趁周末把之前做的单机版相册重构成了多用户版

为什么做这个?
以前一家人出去玩,照片视频全扔微信群里,又乱又压画质,想找原图得翻几个G的聊天记录。市面上的云相册要么收费要么有广告,干脆自己写了一个,直接部署在 NAS 上,足够轻量,全家人用浏览器就能传。

核心特点:

  1. 多用户隔离:管理员在后台创建账号,每人独立文件夹,互不干扰。
  2. 上传体验:支持多选照片和视频,有进度条,上传后自动用 ffmpeg 生成视频缩略图,列表不会黑乎乎一片。
  3. 丝滑预览:点开任意文件后,手机端支持左右滑动翻看,电脑端支持键盘方向键,照片和视频混在一起也能连续浏览。
  4. 防滥用设计:普通用户没有打包下载权限,避免一个人把服务器内存跑满。只有管理员可以在后台按需下载任意用户的文件夹(生成 ZIP)。
  5. 极简风格:整个界面只有文件夹、图片和右下角一个加号按钮,没有多余的东西。
  6. PWA 支持:手机浏览器打开,添加到桌面,体验和 App 差不多。

技术栈

  • 后端:Python Flask + Flask-Login
  • 数据库:SQLite(用户和文件都在本地)
  • 视频缩略图:FFmpeg
  • 部署:Docker / Docker Compose,已推送阿里云容器镜像

快速部署

# 【飞牛云】进入 Docker 目录
cd /vol1/1000/docker


# 从 Gitee 克隆项目代码
git clone https://gitee.com/DAFILI/simple-gallery-v2


# 进入相册目录
cd simple-gallery-v2


# 设置默认管理员密码(替换成你自己的强密码)
echo "DEFAULT_PASS=你的强密码" > .env


# 设置 Session 加密密钥(替换成你自己的随机字符串)
echo "SECRET_KEY=你的随机密钥" >> .env


# 拉取镜像并启动容器
sudo docker compose up -d

默认管理员账号 admin,密码是你设置的 DEFAULT_PASS

截图和代码

ScreenShot_2026-06-07_085632_624.png

ScreenShot_2026-06-07_085551_133.png

ScreenShot_2026-06-07_085619_197.png

ScreenShot_2026-06-07_085606_171.png

ScreenShot_2026-06-07_085513_740.png

后续计划

  • 加一个简单的"一键换封面"功能
  • 考虑支持后端压缩图片,节省 NAS 空间

感兴趣的老哥可以试试,有什么建议或者 bug 直接提 issue,轻喷哈。

收藏
送赞
分享

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则