文档生产部署

Deno Deploy

将仓库连接到 Deno Deploy,并验证构建、环境变量、数据与可观测性边界

Deno Deploy 是 Deno 的托管部署平台,也支持把 region 自托管到自己的基础设施。新平台控制台位于 console.deno.com,数据模型是 organization → app → revision → timeline;它不是旧 Deploy Classic 的原地升级。

创建与部署

可以连接 GitHub 让平台执行集成构建,也可以使用 Deno 内置 CLI:

deno deploy
deno deploy --prod
deno deploy logs --org my-org --app my-app

首次命令会通过系统 keyring 管理认证。自动化环境使用平台认可的 token 流程,不把 deploy token 写进命令历史。

新平台能力截至 2026-08-03 的官方说明
环境Production、Development、Build contexts 分离
数据PostgreSQL 或 Deno KV,按 timeline 创建逻辑隔离
调度Deno.cron(),运行记录进入日志与 traces
可观测性dashboard 提供 logs、traces 与 metrics
缓存CDN caching 与 Web Cache API
区域托管 US/EU,另可自托管 region;发布前核对最新列表
Queue新 Deploy 当前不支持旧 Deno KV Queue API

发布前准备

  1. 服务通过 Deno.serve 或所选框架公开 HTTP 入口。
  2. deno.json 中有可复现的 install/build/start 约定。
  3. deno.lock 已提交,CI 已通过。
  4. 密钥只声明变量名,不写入仓库。
  5. 对 KV、数据库、cron 等能力分别确认一致性与配额;使用 queue 的 Classic 项目先设计替代方案。

上线验证

GET /health          → 200 + 稳定小响应
无密钥请求           → 明确失败,不泄露配置
超时或取消           → 中止上游请求
重复写入             → 幂等或可检测
回滚                 → 前一产物可以重新激活

检查构建日志与请求日志是否含 token、Authorization header 或用户输入。对外部 API 使用超时;对可重试写入使用幂等键。

Revision 与回滚

每个 timeline 维护 revision 历史,active revision 承接流量。发布前验证非生产 timeline,再切换生产;回滚是重新激活上一 revision,不等于自动回滚数据库 migration。

Deno KV

Deno.openKv() 在本地与托管环境的后端和持久化语义不同。键使用结构化数组;事务依赖 versionstamp。开发测试优先使用内存或隔离数据库,生产前核对当前 Deploy 配额和一致性说明。

继续阅读:数据库、Cron 与 TimelinesClassic 迁移

官方参考:About Deno Deploydeno deploy CLITimelines

输入关键词搜索全部文档。