工作原理

三业务模式,一套传送带

从全新部署到接管已有应用,从一次性上线到周更迭代,每一种情况都有专门设计的流程。

Bootstrap

全新部署

服务器是空的,从零拉起。11 步:风险确认与授权 → SSH 连通 → 系统探测 → 装运行时 → 上传代码 → build → pre_deploy → 写 .env + 进程单元 → Nginx + SSL → 启动 → 健康检查。

  • 按风险等级如实告知 + 知情授权(提醒不卡脖子)
  • DryRun 演练:11 步全跑,不动服务器
  • 成功 → Project.first_deployed_at 落库,自动进入 Update 模式

Update

版本迭代

代码已经在线上,推新版本。7 步:扫变化 → 风险分级 → 知情授权 → 备份点(目录硬链接) → 上传 + 平滑重启 → 健康检查轮询 → 完成。失败自动回滚。

  • 绿 / 黄 / 红 三级风险评估,先把后果讲清再让你授权
  • 红色风险:醒目提示不可逆后果,知情确认后继续
  • 自动回滚:健康检查任一不达 → 切回备份点 → 复检

Adopt

接管已有应用

你的应用已经手工跑起来了,把它纳入管理。6 步:只读探测 → 用户问答 M1-M9 → 警告分级 → 接管授权 → 不破坏式镜像配置 + tar.gz 接管前快照 → 写 ADOPTED 标记。

  • 绝不重启 / 不改任何已有文件 / 不装新软件
  • 接管前快照备份:整个应用目录 + 数据库 dump
  • 首次 Update 加强:健康窗 ×2(≥ 60s),失败回滚到接管前快照

风险分级

9 个信号自动告诉你「这次有多危险」

扫描器对比新旧描述符,触发对应信号 → 映射 Green / Yellow / Red 风险等级 → 据此向你如实告知风险。

runtime_changed

Node.js / Python / Go 等运行时大类变化

runtime_version_jump

运行时主版本号跨越(node 18 → 20)

start_command_changed

启动命令变化(pm2 → systemd 等)

port_changed

服务监听端口变化

new_required_env

新增的必填环境变量(缺值会启动失败)

pre_deploy_added

新增的 pre_deploy 钩子

pre_deploy_has_unreversible

包含数据库 schema 变更等不可逆操作

breaks_api

API 破坏式变更(删字段 / 改返回类型;由发起者声明)

major_dep_bump

关键依赖主版本升级(react 17 → 18 等)

Green · 低风险

单条信号 ≤ 1,直接知悉授权即可

Yellow · 中风险

≥ 2 条信号,如实告知后果 + 延长健康检查窗

Red · 高风险

≥ 5 条信号 / 含不可逆操作,醒目提示不可逆后果,知情后授权

装备库

五类档案,第二次起 0 输入

凡是需要重复填的东西,我们都做成档案。第二个项目部署时,从下拉选,不重复填。

🖥️

服务器

host + ssh_port + user + ssh_key_vault_ref(私钥本机 Vault,服务端零知识)

📜

ICP 备案

subject + filing_number + related_domains + 状态机(draft → in_progress → active)

🌐

域名

domain + registrar + 关联 ICP filing + SSL 续签方(letsencrypt / certbot / cdn)

🔐

第三方账号

微信支付 / 阿里云 / 七牛 / DeepSeek 等 9 类,凭据全部走 Vault 引用

📂

项目

Bootstrap 后的所有部署历史 + 描述符 + 关联装备(server / domain / ICP)

安全

不接触你不需要给我们的东西

SSH 私钥可以完全不离开你的电脑。所有敏感操作 3 年留证。失败自动回滚不打扰你。

🔑

桌面客户端 + 本地 Vault

SSH 私钥可选择存进系统 Keychain(macOS Keychain / Win DPAPI / Linux Secret Service),服务端零知识。桌面客户端跑 11 步,SSH 全部走你自己机器。

📜

授权与免责留痕

每次部署的风险快照 + 知情授权 + IP + UA + 时间戳留痕。任何动作可追溯,便于审计与免责。

💾

备份点 = 目录硬链接

cp -al 硬链接快照,几乎不占空间。健康检查失败 → ln -snf 切回上一版本秒级恢复。

🛡️

Vault 全程审计

凭据写入 / 读取 / 轮换 / 删除全部进 vault_access_log,带 IP + 业务上下文,3 年留存。

读完了?该亲手跑一遍

Free 层免费开始,无须信用卡。