用 npm 做免费图床,这操作绝了!

最近发现了一个骚操作 ------ 用 npm 当图床,完全免费,还带全球 CDN 加速。分享一下具体实现过程。

为啥要用 npm 做图床?

先说说背景,我经常在各大平台写文章,需要上传图片。但:

  • 免费图床不稳定,容易挂
  • 自建图床成本高
  • 其他平台限制多

然后想到 npm,这不就是现成的 CDN 吗?全球访问速度还快。

怎么实现的?

1. 基本原理

npm 包本质上就是一堆文件,我们可以把图片放进去。发布后,npm 的 CDN 会自动分发这些文件。

访问方式:

ruby 复制代码
# unpkg
https://unpkg.com/包名@版本号/图片路径

# jsdelivr  
https://cdn.jsdelivr.net/npm/包名@版本号/图片路径

# PS
https://unpkg.com/cosmium@latest/images/other/npm-pic.png

2. 自动化发布npm包

每次提交图片后都需要手动发布到 npm那不是很烦, 别急github Actions可以帮我们自动发包, 可以直接fork 我的项目:github.com/Cosmiumx/co...

yaml 复制代码
name: Publish to npm

on:
  push:
    branches:
      - master

jobs:
    ....

3. 配置步骤

  1. Fork 本项目
    • 将本项目 Fork 到你的 GitHub 账号下。
  2. 修改包名
    • 编辑 package.json,将包名改为你自己的:
json 复制代码
{
  "name": "your-package-name",
  "version": "0.0.1",
  ...
}

注意:包名必须是 npm 上未被占用的名称。

  1. 创建 npm token

    • 访问 npmjs.com
    • 进入 Access Tokens 页面
    • 点击 Generate New Token → 选择 Bypass 2FA 类型 (npm最新规则token最长只能设置90天)
    • 记住这个 token,只显示一次
  2. 配置 GitHub Secrets

    • 在你 Fork 的仓库中:
    • 仓库 Settings → Secrets and variables → Actions
    • 添加 NPM_TOKEN,值为刚才的 token
  3. 上传图片

    • 把图片放到 images 目录
    • 提交代码,工作流自动发布

4. 访问方式

发布后,图片可通过以下 CDN 访问:

bash 复制代码
# unpkg
https://unpkg.com/cosmium@latest/images/your-image.png

# jsdelivr
https://cdn.jsdelivr.net/npm/cosmium@latest/images/your-image.png

实际体验

优点:

  • 完全免费,npm 不收费
  • 全球 CDN,访问速度快
  • 自动化流程,上传图片后自动发布
  • 版本管理清晰

注意事项:

  • ⚠️ npm 包一旦发布无法删除,版本号会永久保留
  • ⚠️ 不要上传敏感信息,npm 包是完全公开的
  • ⚠️ 遵守 npm 使用条款,不要滥用 CDN 服务
  • ⚠️ 图片版权,确保你有权使用并分发上传的图片

总结

这个方案算是找到了一个不错的图床替代方案,特别适合经常写技术文章的同学。虽然有点折腾,但效果不错。

有兴趣的可以 fork 我的项目:github.com/Cosmiumx/co...

配置好之后,以后上传图片就只是 git push 的事情了,还是很方便的。


如果这个方法对你有帮助,别忘了点赞支持一下~

相关推荐
逛逛GitHub1 天前
面壁智能开源了支持音色设计、克隆、30语言+9 种方言的语音大模型
github
小领航1 天前
用 Three.js + Vue 3 打造炫酷的 3D 行政地图可视化组件
前端·github
李同学Lino1 天前
别再让Agent瞎写屎山代码了!带你用Superpowers重塑Vibe Coding体验(附保姆级教程)
github
HashTang1 天前
用自然语言驱动的开源 3D 建筑设计编辑器-Aedifex
前端·github·ai编程
星渊澈1 天前
从github上git clone 比较慢,如何解决。。
git·github
陪我去看海1 天前
JueJin-MCP:让AI帮你一键发布掘金文章
github
AI成长日志1 天前
【GitHub开源项目】推理优化技术栈全览:从PyTorch到专用引擎
pytorch·开源·github
中科三方1 天前
完整指南:域名解析暂停是什么意思,如何恢复正常解析?
github
Freak嵌入式1 天前
小作坊 GitHub 协作闭环:fork-sync-dev-pr-merge 实战指南
python·github·远程工作·代码规范·micropython·协作