首先,要成功部署 NodeWarden,你需要一个 Cloudflare 账号(需绑定域名和信用卡用于开通服务,免费额度内不扣费)和一个 GitHub 账号。
Fork 项目:将 NodeWarden 的代码仓库复制到你的 GitHub 下。
部署到 Cloudflare:在 Cloudflare 后台连接你的 GitHub 仓库,并设置构建命令。
初始化设置:访问部署后的域名,设置安全密钥 (JWT_SECRET) 和管。
客户端登录:在 Bitwarden 客户端中选择自托管,填入你的服务地址即可使用。
访问 NodeWarden 的 GitHub 项目仓库(作者为 shuaiplus)。
点击页面右上角的 Fork 按钮,将该仓库复制到你自己的 GitHub 账号下。

登录你的 Cloudflare 仪表盘,进入 Workers & Pages 页面。
点击 “创建应用程序” 或 “Connect to Git” 按钮。
选择 “Continue with GitHub”,按提示授权并选择你刚才 Fork 的 NodeWarden 仓库。
在构建设置页面,你需要填写以下信息:
构建命令 (Build command):npm run build
部署命令 (Deploy command):npm run deploy
存储方式说明:npm run deploy 默认使用 Cloudflare R2 存储附件,需要先在你的 Cloudflare 控制台开通 R2 服务。如果你暂时不想绑定信用卡或附件需求不大(R2 有免费额度),也可以尝试将部署命令改为 npm run deploy:kv,使用 KV 存储,这样可能无需绑卡即可部署。


点击 “保存并部署”,等待 Cloudflare 自动完成构建和部署。
部署成功后,Cloudflare 会分配一个 *.workers.dev 的临时域名。
在浏览器中打开这个临时域名。
页面会提示“未检测到 JWT_SECRET”,需要进行设置。
按照页面指引,生成一个至少32位字符的随机字符串作为你的 JWT_SECRET。
回到 Cloudflare 仪表盘的 Workers & Pages,点击你刚部署的服务,进入 “设置” > “变量和机密” 页面。
在 “环境变量” 或 “机密” 部分,添加一个变量:
变量名称:JWT_SECRET
值:粘贴你刚才生成的随机字符串。
类型:选择“机密 (Secret)”以保护该值。
保存后,Cloudflare 会自动重新部署。等待部署完成,刷新 NodeWarden 的页面。
此时,你应该能看到初始化设置界面。根据页面提示,设置你的主管理员账号和密码(建议同时开启 TOTP 二次验证以增强安全性)。
打开你的 Bitwarden 官方客户端(桌面App、手机App或浏览器插件)。
在登录界面,不要直接输入邮箱密码,而是寻找并点击 “自托管” 或 “Self-hosted” 选项。
在 “服务器 URL” 一栏中,填写你的 NodeWarden 服务地址(即 Cloudflare 分配的域名或你绑定的自定义域名)。
返回登录页面,输入你在第3步创建的管理员账号和密码,即可登录使用。
功能定位:NodeWarden 主要为个人单用户设计,不支持组织、密码分享等团队功能,但核心的密码管理、同步、TOTP、附件功能都完整支持。
安全基础:和官方 Bitwarden 一样,你的密码数据在本地加密后才上传到服务器,服务端无法解密你的数据。安全性取决于你对 JWT_SECRET 和主密码的保护。
升级更新:如果后续想更新到 NodeWarden 的新版本,可以在 Cloudflare 部署设置中配置 GitHub 自动同步,实现一键更新。