Skip to main content
On this page

环境变量和上下文

Info

您正在查看 Deno DeployEA 的文档。正在寻找 Deploy Classic 的文档?请点击这里查看

Deno DeployEA 中的环境变量允许您使用静态值配置应用程序,例如 API 密钥或数据库连接字符串。

环境变量类型 Jump to heading

环境变量可以以以下形式存储:

  • 纯文本:在 UI 中可见,适用于非敏感值,如特征标志
  • 密钥:创建后在 UI 中不可见,仅能从应用代码中读取,适用于敏感值,如 API 密钥

变量可以设置在:

  • 应用级别:特定于单个应用
  • 组织级别:应用于组织中的所有应用,但可以被应用级变量覆盖

上下文 Jump to heading

每个环境变量适用于一个或多个上下文。上下文代表代码运行的逻辑“环境”,每个环境拥有自己的一组变量和密钥。

默认情况下,有两个上下文:

  • 生产:用于生产时间线,服务生产流量
  • 开发:用于开发时间线,服务非生产流量(预览 URL 和分支 URL)

Info

需要额外的上下文?请联系 支持

此外,还有一个用于构建过程中的 构建 上下文。构建上下文中的环境变量仅在构建期间可用,在生产和开发上下文中不可访问(反之亦然)。这种分离使得构建时和运行时可以有不同的配置。

在单个应用或者组织内,同一上下文中不能存在多个同名的环境变量;但可以在不同且不重叠的上下文中存在同名变量。

添加、编辑和删除环境变量 Jump to heading

您可以从多个位置管理环境变量:

  • 在创建应用时的 “新建应用” 页面
  • 在应用设置的 “环境变量” 部分
  • 在组织设置的 “环境变量” 部分

在每个位置,点击相应的编辑按钮打开环境变量抽屉。更改仅在点击 “保存” 后生效。点击 “取消” 会放弃更改。

添加变量步骤:

  1. 点击 “添加环境变量”
  2. 输入名称和值
  3. 指定是否为密钥
  4. 选择适用的上下文

您也可以从 .env 文件批量导入变量:

  1. 点击 “+ 从 .env 文件添加”
  2. 粘贴 .env 文件内容
  3. 点击 “导入变量”

注意以 # 开头的行会被视为注释。

删除变量,点击其旁边的 “删除” 按钮。

编辑变量,点击其旁边的 “编辑” 按钮,可修改名称、值、密钥状态或适用上下文。

在代码中使用环境变量 Jump to heading

通过 Deno.env.get API 访问环境变量:

const myEnvVar = Deno.env.get("MY_ENV_VAR");

限制 Jump to heading

环境变量有以下限制:

  • 环境变量键最大长度为 128 字节。\
  • 环境变量键不能以以下前缀开头:
    • DENO_,但允许以下除外:DENO_AUTH_TOKENSDENO_COMPATDENO_CONDITIONSDENO_DEPLOY_ENDPOINTDENO_DEPLOY_TOKEN
    • LD_
    • OTEL_
  • 环境变量值最大长度为 16 KB(16,384 字节)。
  • 环境变量键不能为以下任一键。请改用 云连接
    • AWS_ROLE_ARN
    • AWS_WEB_IDENTITY_TOKEN_FILE
    • GCP_WORKLOAD_PROVIDER_ID
    • GCP_SERVICE_ACCOUNT_EMAIL
    • GCP_PROJECT_ID
    • AZURE_CLIENT_ID
    • AZURE_TENANT_ID
    • AZURE_FEDERATED_TOKEN_FILE

预定义环境变量 Jump to heading

Deno DeployEA 在所有上下文中提供以下预定义环境变量:

  • DENO_DEPLOY=1:表示应用正在 Deno Deploy 环境中运行。

  • DENO_DEPLOYMENT_ID:表示整个配置集(应用 ID、修订 ID、上下文和环境变量)的唯一标识符。当其中任何组件更改时此值也会变化。

  • DENO_DEPLOY_ORG_ID:应用所属组织的 ID。

  • DENO_DEPLOY_ORG_SLUG:应用所属组织的标识符。

  • DENO_DEPLOY_APP_ID:应用的 ID。

  • DENO_DEPLOY_APP_SLUG:应用的标识符。

  • DENO_DEPLOY_BUILD_ID:当前运行的修订版本 ID。

构建期间,环境变量中还会额外设置 CI=1

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

编辑此页面
隐私政策