我为 NAS 党手撸了一个极简且强大的开源云图库——CloudImgs(云图)

2025 年 12 月 28 日
 qazzxxx

今天想和大家分享一个我最近开发的开源项目——**云图 (CloudImgs)**。

这是一个极简风格的自建图床/云图库,支持 Docker 一键部署,完美适配 NAS 环境,并且拥有超灵活的 API 接口

🛠️ 为什么要造这个轮子?

说实话,起初我并没有打算写个图床。

事情的起因是我在使用 N8N 处理自动化工作流时,遇到了大量的图片处理需求。我尝试寻找现有的开源解决方案,但结果并不理想:

既然我自己有 NAS,又懂一点代码,为什么不自己写一个呢?于是,云图 (CloudImgs) 诞生了。它主打自由、开放、极简,专为解决实际问题而来。


🖥️ 在线体验

先别急着看技术细节,大家可以直接上手体验一下 UI 和交互。

⚠️ 注:演示站为纯静态 Mock 模式,上传/删除仅演示 UI 交互,数据不保存。真实部署后,体验会更好(特别是缩略图加载)。


✨ 核心亮点:不仅仅是存图片

1. 颜值即正义:极简瀑布流 & 丝滑交互

我们抛弃了繁杂的后台界面,采用现代化的瀑布流布局。集成 ThumbHash 技术,在图片未完全加载时通过算法生成极小的占位哈希图,实现无感加载,告别“白屏”等待,视觉体验极佳。

2. 生产力工具:PicGo 插件无缝集成

对于写博客、Markdown 文档的朋友,图床的便捷性至关重要。云图原生支持 PicGo,我已经写好了对应的插件,安装即用。截图 -> 自动上传 -> 粘贴链接,一气呵成。

3. 开发者福音:强大的实时处理 API

这是我最自豪的功能之一。云图不仅仅是存储,还是一个即时的图片处理引擎。你可以通过 URL 参数实时处理图片:

这就意味着,你上传一张 4K 原图,在不同设备上可以通过参数调用不同尺寸的缩略图,极大减轻前端压力。

4. 全能管理与安全


📸 更多界面预览

登录页面:简洁大方,支持密码保护。

瀑布流管理图片:支持瀑布流展示管理图片。

批量操作:支持圈选多图一键操作。

整页上传:支持多图拖拽一键上传。

相册分享:一键生成分享链接,发给朋友。

开放 API:灵活调用开放 API 。


🚀 极速部署 (NAS/Docker)

作为 NAS 党,我深知部署难度的痛点。云图完全 Docker 化,只需要一个 docker-compose.yml 即可跑起来。

1. 创建 docker-compose.yml

services:
  cloudimgs:
    image: qazzxxx/cloudimgs:latest
    ports:
      - "3001:3001"
    volumes:
      - ./uploads:/app/uploads:rw # 图片数据存储位置
    restart: unless-stopped
    container_name: cloudimgs-app
    environment:
      - PUID=1000  # 替换为你 NAS 用户的 UID (终端输入 id -u 查看)
      - PGID=1000  # 替换为你 NAS 用户组的 GID (终端输入 id -g 查看)
      - UMASK=002
      - NODE_ENV=production
      - PORT=3001
      - STORAGE_PATH=/app/uploads
      # 👇 如果需要密码访问,请取消下面这行的注释并修改密码
      # - PASSWORD=your_secure_password_here

2. 启动服务

docker-compose up -d

启动后,访问 http://ip:3001 即可开始使用!

关于密码保护

如果你是在公网环境或者不想让别人随意查看,强烈建议在环境变量中配置 PASSWORD。配置后,访问系统需要输入密码,且状态会保存在本地浏览器中,既安全又不用频繁登录。


🔗 项目地址

开源不易,如果你觉得「云图」还不错,或者帮到了你的忙,希望能去 GitHub 点个 Star ⭐️ 支持一下!这也是我持续维护的动力。

如果你在使用过程中遇到任何问题,欢迎在 GitHub 提 Issue 或在评论区留言,我会尽快回复大家!

2741 次点击
所在节点    分享创造
2 条回复
ryd994
2025 年 12 月 28 日
看起来和 immich 大部分重复,除了 immich 不能以 API 指定分辨率以外
Memfei
2025 年 12 月 31 日
好东西收藏了,正好也刚用 n8n ,有机会一定试试

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://v2ex.ih06.com/t/1181683

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX