项目的开始是用 N8N处理相关流程 时有很多图片处理的需求,找了很多开源项目有的比较老无人维护,有的需要购买PRO版本才能有更多的功能。以上种种原因吧,再加上自己也有NAS,所以写了一个比较自由开放的图床项目。
演示地址:https://yt.qazz.site
此演示为纯静态 Mock 模式部署,图片数据随机加载,不涉及真实后端调用。
- 访问密码:
123456- 说明:上传、删除等操作仅演示UI交互,数据不会保存,部分功能不可用。演示的加载图片列表体验比真实环境下体验差很多,真实环境下通过thumbhash生成缩略图优化加载。
- 支持各种灵活开放API
- 图片上传接口-支持base64
- 随机图片接口
- 获取指定图片(支持尺寸/质量/格式处理)
- SVG 转 PNG接口
- 图片列表接口
- 图片删除接口
- 图片上传,多图拖拽一键上传
- 支持压缩图片大小
- 支持URL参数实时处理图片 (如:image.jpg?w=500&h=300&q=80&fmt=webp 自动将原图转换为WebP 、宽500px,高300px,图片质量压缩到80% 返回)
- 支持PicGo插件直接安装使用PicGo插件
- 支持上传其他文件格式,全局上传
- 在线管理图片,瀑布流展示,批量圈选删除
- 集成thumbhash无感生成缩略图加载图片列表优化
- 支持设置密钥,保护图片安全
- 支持多级子目录管理
- 支持 SVG 图片转换为 PNG 格式
- 支持图片压缩工具,可自定义压缩质量和尺寸
- 支持图片分享,一键复制图片链接
- 支持多主题样式切换
- 移动端适配
- 更多功能,等你来发现
services:
cloudimgs:
image: qazzxxx/cloudimgs:latest
ports:
- "3001:3001"
volumes:
- ./uploads:/app/uploads:rw # 上传目录配置,明确读写权限
restart: unless-stopped
container_name: cloudimgs-app
# 使用 root 用户运行以解决权限问题
user: "root"
environment:
- NODE_ENV=production
- PORT=3001
- STORAGE_PATH=/app/uploads
# 密码保护配置(可选)
# - PASSWORD=your_secure_password_here如需启用密码保护,请在环境变量中设置 PASSWORD:
environment:
- PASSWORD=your_secure_password_here注意事项:
- 设置
PASSWORD环境变量后,系统将自动启用密码保护 - 未设置
PASSWORD时,系统无需密码即可访问 - 密码验证成功后,登录状态会保存在浏览器本地存储中




