图床,但是命令行,在任何地方
前段时间用 claude + glm4.7 整了个使用 nginx + lua 脚本实现的个人图床方案,很简洁啊,主要逻辑都集中在一个 nginx 配置文件内,不到 120 行,兼具性能(nginx 特性)和访问速度(套 cdn)。
然而这种部署方式绕不开一个问题:得有一台服务器。专门搞一台服务器做个人图床多少是有点大材小用了,个人使用又能存多少东西呢?不如先薅大厂羊毛,等到羊毛不够用了再换不迟。
于是这个轮子(项目)诞生了,在 codex + gpt5.4 和本人的努力下,花了一晚上时间。
项目简介
curl-powered image hosting for hackers. One-click deploy on Cloudflare, or integrate with existing nginx server.
该项目 qspidy/imgng 的设计理念是,能在身边任何一台联网的机器上传图片到图床并获取链接,只要记住这条几乎不能再短的 curl 命令:
1 | curl -u user:pass --data-binary @photo.jpg https://example.com/upload |
之所以说是“几乎”不能再短,是因为还可以使用 alias 或者 shell函数 给它设置别名,然后像使用一个普通 linux 命令一样使用它:
1 | imgng() { |

这次相比上一篇博客使用 Nginx 搭建个人图床,让链接永远有效!的主要变化是,提供一个零成本的服务端部署方案,使用 Cloudflare + R2。当然还有很多其它薅羊毛(免费部署)方案,参考文末的外部链接,相信各路大神都能找到适合自己的方案。
从某种程度上而言,它更像是提供了一个相较传统 S3 API 而言更简洁的接口,在客户端做到了极致的简洁(命令行爱好者狂喜!)。
结合当前 CLI 越来越热的趋势,这小项目还有更多存在和参考的意义,后续或许可以进一步发展成一整套图床命令行增删改查(接口方案)。再者可以通过 Skills/MCP 等方式和 Agent 无缝集成,成为 Agent 工作流的一部分。
要长期使用的话,它目前还缺少一些关键的功能:图片展示列表,重复图片处理等。接下来会继续完善这些关键的功能。
另外还有些可选功能:支持多用户,备份恢复等。因为它当前的定位是个人使用,所以支持多用户暂不考虑,而文件存储在 R2 上也基本不用担心文件丢失的问题,所以目前不急(备份也就一条命令的事,考虑到前段时间 Cloudflare 还崩了一次,备份还是有必要的)。
碎碎念
用了 codex + gpt5.4 才知道原来不是 Agent 不好用,而是钱没到位(选错了模型和 Agent),回想当初用 claude + glm4.7,那真是改了又改,5 小时额度用完了都没跑通。这次几乎是首次提示词一下去出来的东西就能用,后面只需做些功能完善和文档生成的工作。
心情很复杂。很兴奋,在 AI 加持下个人能力边界得到了极大的扩张,很悲伤,AI 对程序员群体造成了很大的冲击,许多知识与技能似乎都没有了意义。
虽然如此,技术在发展,时代在进步,拥抱未来是唯一能走的路。




