Skip to main content
On this page

构建

在 Deno Deploy 中,您应用程序代码的每个版本都被表示为一个修订(或构建)。当从 GitHub 部署时,修订通常与您仓库中的 git 提交一一对应。

构建触发 Jump to heading

构建可以通过两种方式触发:

  • 手动触发:使用构建页面上的“部署默认分支”按钮,部署默认 git 分支(通常是 main)。下拉菜单允许您选择不同的分支。

  • 自动触发:当向与您的应用关联的 GitHub 仓库推送新的提交时。

构建阶段 Jump to heading

一个修订在变为可用状态前会经历以下阶段:

  1. 排队:修订等待分配给构建器。
  2. 准备:构建器下载源代码并恢复可用的构建缓存。
  3. 安装:执行安装命令(如果指定),通常用来下载依赖。
  4. 构建:执行构建命令(如果指定),生成构建产物并上传到运行时基础设施。
  5. 预热:通过发起 GET / 请求测试应用是否能正确启动并处理 HTTP 请求。
  6. 路由:配置全局基础设施,将请求路由到基于时间线的新修订。

如果任何步骤失败,构建将进入“失败”状态并且不会接收流量。

构建日志会在构建过程中实时推送到仪表盘,构建完成后仍可在构建页面查看。

构建缓存通过重用在构建间未更改的文件来加快构建速度。对于框架预设和 DENO_DIR 依赖缓存,此过程是自动进行的。

您可以使用构建页面右上角的“取消”按钮取消正在运行的构建。构建会在运行 5 分钟后自动取消。

构建配置 Jump to heading

构建配置定义了如何将源代码转换为可部署的产物。您可以在以下三处修改构建配置:

  • 创建应用时点击“编辑构建配置”
  • 在应用设置中点击构建配置部分的“编辑”
  • 在失败构建页面的重试抽屉中

在创建应用时,如果您使用已识别的框架或常见构建配置,构建配置可能会自动从仓库中检测。

配置选项 Jump to heading

  • 框架预设:针对支持的框架(如 Next.js 或 Fresh)做了优化的配置。了解更多框架集成

  • 安装命令:安装依赖的 shell 命令,如 npm installdeno install

  • 构建命令:构建项目的 shell 命令,通常是 package.jsondeno.json 中的任务,如 deno task buildnpm run build

  • 运行时配置:决定应用如何提供流量:

    • 动态:用于通过服务器响应请求的应用(API 服务器、服务器渲染网站等)
      • 入口文件:要执行的 JavaScript 或 TypeScript 文件
      • 参数(可选):传递给应用的命令行参数
    • 静态:用于提供预渲染静态内容的静态网站
      • 目录:包含静态资源的文件夹(如 dist.output
      • 单页应用模式(可选):对不匹配静态文件的路径返回 index.html,而不是 404 错误

构建环境 Jump to heading

构建环境在 Linux 上运行,支持 x64 或 ARM64 架构。可用工具包括:

  • deno(与运行时版本相同)
  • node
  • npm
  • npx
  • yarn(v1)
  • pnpm
  • git
  • tar
  • gzip

Info

构建器内部所有 JavaScript 代码均使用 Deno 执行。

node 命令实际上是一个 shim,负责将 Node.js 的调用转换为 deno run。类似地,npmnpxyarnpnpm 也都是通过 Deno 而非 Node.js 运行。

为“构建”上下文配置的环境变量在构建过程中可用,但来自“生产”或“开发”上下文的变量不可用。了解更多关于环境变量

构建器在构建期间可用的存储空间为 8 GB。

你找到了你需要的东西吗?

编辑此页面
隐私政策