跳至主要内容

为存储库指定推荐的密钥

您可以在开发容器配置中添加一个设置,该设置将在人们创建 Codespace 时提示他们设置特定的开发环境密钥。

谁可以使用此功能?

具有存储库写入权限的人员可以创建或编辑 Codespace 配置。

如果项目需要设置用户特定的密钥,您可以在用户创建代码空间时提示他们进行设置。您可以通过在存储库的开发容器配置文件中添加设置来实现这一点。

在您指定推荐的密钥后,如果用户尚未在他们的 Codespaces 个人设置中创建这些密钥,他们将在使用高级选项方法创建代码空间时被提示进行创建。这在 GitHub.com 上完成,方法是点击 代码按钮,然后点击代码空间选项卡,最后选择 并点击使用选项新建

Screenshot of the options dropdown in the "Codespaces" tab, with the option "New with options" highlighted.

推荐的密钥列在页面底部。

Screenshot of the "Create codespace" page with four recommended secrets highlighted with a dark orange outline.

注意:只有当所选分支上的容器配置指定这些密钥时,推荐的密钥名称才会在此页面上列出。

每个推荐的密钥以三种方式之一显示

  • 如果用户尚未在他们的 Codespaces 设置中设置推荐的密钥,则会显示一个输入框,允许他们立即创建密钥。如果您已配置描述和更多信息的链接,则会显示这些信息。输入值是可选的。
  • 如果用户已创建推荐的密钥,但尚未将其与该存储库关联,则可以选择一个复选框以添加此关联。这样做是可选的。
  • 如果用户已创建推荐的密钥并将其与该存储库关联,则会显示一个预选的复选框。

您应该将推荐的密钥用于创建代码空间的用户(而不是存储库或组织的所有者)必须提供的开发环境密钥。例如,如果您有一个公共项目,并且用户必须提供个人 API 密钥才能在您的项目中运行应用程序,您可以指定一个推荐的密钥,以便在用户使用高级选项页面创建代码空间时,系统会提示他们提供密钥作为密钥的值。

或者,对于存储库或组织所有者可以提供的开发环境机密(例如团队之间共享的 API 密钥),您可以在存储库或组织级别设置机密。有关更多信息,请参阅“管理存储库或组织的开发环境机密”。

  1. 您可以通过向 devcontainer.json 文件添加设置来配置为您的存储库创建的 codespace。如果您的存储库中还没有 devcontainer.json 文件,您现在可以添加一个。请参阅“向您的存储库添加 dev 容器配置”。

  2. 编辑 devcontainer.json 文件,在文件顶层的 JSON 对象中添加 secrets 属性。例如

    JSON
    "secrets": {
      "NAME_OF_SECRET_1": {
        "description": "This is the description of the secret.",
        "documentationUrl": "https://example.com/link/to/info"
      },
      "NAME_OF_SECRET_2": { }
    }
    
  3. 为每个要推荐的机密在 secrets 中添加一个属性。例如,在前面的代码示例中,将 NAME_OF_SECRET_1NAME_OF_SECRET_2 更改为人们应该在 Codespaces 的个人设置中创建的机密的名称。

  4. 可以选择为每个机密提供描述和有关此机密的更多信息的 URL。

    您可以省略 descriptiondocumentationUrl,如前面的代码示例中的 NAME_OF_SECRET_2 所示。

  5. 根据需要指定其他机密。

  6. 保存文件并将更改提交到存储库的所需分支。

进一步阅读