ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

NodeWarden R2 vs KV 存储模式实战对比:不绑信用卡行不行?为你的密码库选对方案

NodeWarden R2 vs KV 存储模式实战对比:不绑信用卡行不行?为你的密码库选对方案 NodeWarden R2 vs KV 存储模式实战对比不绑信用卡行不行为你的密码库选对方案【免费下载链接】nodewardenBitwarden-compatible server running on Cloudflare Workers项目地址: https://gitcode.com/gh_mirrors/no/nodewardenNodeWarden 是一款运行在 Cloudflare Workers 上的 Bitwarden 兼容自建密码库服务器支持 R2 与 KV 两种文件存储模式。本文对比两种模式的核心差异——单文件大小、免费额度、是否必须绑定信用卡——并给出适合新手的选型建议与一键切换 KV 模式的部署方法帮助你为密码库选对存储方案。一分钟看懂为什么有 R2 和 KV 两种模式NodeWarden 的数据存储分两层账号与密码库数据始终存放在D1 数据库SQLite与模式无关文件类内容密码项附件、Send 分享文件存放在对象存储这才是 R2 / KV 模式的分叉点。配置项R2 模式默认KV 模式可选配置文件wrangler.tomlwrangler.kv.toml存储绑定ATTACHMENTSR2 存储桶ATTACHMENTS_KVKV 命名空间单文件上限100 MB软限制可调25 MiBCloudflare 平台上限免费额度10 GB 存储1 GB 存储需要绑定信用卡✅ 是❌ 否部署命令npm run deploynpm run deploy:kv 关键点两种模式只影响附件与 Send 文件密码、TOTP、设备管理等核心数据都在 D1 中功能完全一致。不绑信用卡行不行KV 模式可行性分析结论先行可以用 KV 模式即可完全绕开信用卡绑定。KVKey-Value命名空间是 Cloudflare 的老牌存储产品个人免费账户开箱即用无需任何支付方式。NodeWarden 已为此做好适配仓库内置了 wrangler.kv.toml其中[[kv_namespaces]]绑定了ATTACHMENTS_KV辅助脚本 scripts/ensure-kv.cjs 会在首次部署时自动创建 KV 命名空间并把命名空间id固定写回配置避免重复构建时触发 Cloudflare 的 10014 报错——对新手非常友好全程零手动操作package.json 提供了现成脚本dev:kv本地调试、deploy:kv一键上线。代价是单文件 25 MiB 上限与 1 GB 免费容量。日常密码库场景登录信息、银行卡号、密钥片段几乎不产生大附件KV 模式足够使用只有当你习惯把截图、PDF 文档挂到密码项附件里时才需要考虑 R2。如何选择按使用场景对号入座你的情况推荐方案只存密码、邮箱、API Key不上传附件KV免费、免信用卡、最省心偶尔上传小文件几十 KB ~ 几 MBKV经常存截图、证件照、PDF 等大附件R2需要长期存放大量 Send 分享文件R210 GB 免费额度更宽裕账号较多、附件总量可能超 1 GBR2 一句话决策法我会不会往密码库里传文件传的文件会不会超过 25 MB两个都是不会就选 KV。快速部署一键切换 KV 模式的步骤如果你确定用 KV 模式CLI 部署只需四步# 1. 获取代码 git clone https://gitcode.com/gh_mirrors/no/nodewarden cd nodewarden # 2. 安装依赖并登录 Cloudflare npm install npx wrangler login # 3. 部署KV 模式 npm run deploy:kvdeploy:kv实际执行的是node scripts/ensure-kv.cjs wrangler deploy -c wrangler.kv.toml即先确保 KV 命名空间存在再用 wrangler.kv.toml 部署。本地调试可用npm run dev:kv实时验证。如果是通过 Cloudflare 控制台的可视化部署Fork Connect GitHub只需把部署命令从npm run deploy改为npm run deploy:kv其余步骤不变。⚠️ 注意KV 命名空间是按账号持久化的删除 Worker 重新部署不会清空已有数据想彻底重来需同时删除 D1 数据库与 KV 命名空间。源码细节blob-store 如何自动选择存储文件读写都经过统一抽象层 src/services/blob-store.ts逻辑非常直观getBlobStorageKind()R2 优先——同时绑定了 R2 与 KV 时自动选 R2否则回落到 KV两者都没有则报错KV_MAX_OBJECT_BYTES25 MiBKV 模式下写入超大文件会被直接拒绝getBlobStorageMaxBytes()把配置的上限与平台物理上限取较小值KV 模式下 100 MB 的配置会被自动压缩到 25 MiB。而配置的上限来自 src/config/limits.ts附件与 Send 文件默认都是 100 MBLIMITS.attachment.maxFileSizeBytes与LIMITS.send.maxFileSizeBytes这也是 R2 模式下单文件 100 MB软限制可调的出处。常见问题FAQQ1KV 模式会影响实时同步、TOTP、Passkey 等功能吗不会。这些走的是 D1 数据库与 Durable Objects见 wrangler.toml 中的NOTIFICATIONS_HUB绑定与文件存储层无关。Q2KV 的 1 GB 免费额度是算什么的只统计你存放在 KV 命名空间里的附件和 Send 文件密码库文本数据不计入。Q3以后想从 KV 升级到 R2 方便吗绑定层面是加一个 R2 绑定即可R2 优先但已存在的附件需要手动迁移到新存储桶建议一开始就按预估容量做选择。Q4云备份WebDAV / S3和这里的存储是什么关系NodeWarden 的云端备份中心是把整个密码库加密后增量备份到 WebDAV/S3属于独立的数据保护手段与 R2/KV 附件存储互不影响推荐两种模式的用户都配置。总结不绑信用卡 → 选 KV 模式npm run deploy:kv一键搞定单文件 25 MiB / 1 GB 免费额度足以覆盖绝大多数密码库场景大附件、大 Send 文件、追求 10 GB 免费空间 → 选 R2 模式接受绑卡成本换取完整体验两者功能对等、切换成本低但数据不互通部署前按上表的决策法想清楚附件需求即可。你的密码库选对存储一半的坑就绕过去了 ️【免费下载链接】nodewardenBitwarden-compatible server running on Cloudflare Workers项目地址: https://gitcode.com/gh_mirrors/no/nodewarden创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表