选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

将 EB CLI 与 AWS CodeBuild

聚焦模式
将 EB CLI 与 AWS CodeBuild - AWS Elastic Beanstalk

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。

AWS CodeBuild 可编译源代码,运行单元测试,并生成可供部署的项目。您可以将 CodeBuild 与 EB CLI 结合使用来从应用程序的源代码自动构建应用程序。环境创建和之后的每个部署都将以构建步骤开始,然后部署生成的应用程序。

注意

有些地区不提供 CodeBuild。Elastic B CodeBuild eanstalk 和 Elastic 之间的集成在这些地区不起作用。

有关每个地区提供的 AWS 服务的信息,请参阅区域表

创建 应用程序

创建使用的 Elastic Beanstalk 应用程序 CodeBuild
  1. 在您的应用程序文件夹中加入 CodeBuild 编译规范文件。buildspec.yml

  2. 使用特定于 Elastic Beanstalk 的选项添加一个 eb_codebuild_settings 条目到文件。

  3. 在此文件夹中运行 eb init

    注意

    将 EB CLI 与一起使用时,请勿在应用程序名称中使用句点 (. ) 或空格 () 字符 CodeBuild。

Elastic Beanstalk CodeBuild 扩展了构建规范文件格式,增加了以下其他设置:

eb_codebuild_settings: CodeBuildServiceRole: role-name ComputeType: size Image: image Timeout: minutes
CodeBuildServiceRole

CodeBuild 可用于代表您与依赖服务交互的 ARN 或 AWS Identity and Access Management (IAM) AWS 服务角色的名称。该值为必填项。如果您忽略此值,任何后续的 eb createeb deploy 命令都将失败。

要了解有关为创建服务角色的更多信息 CodeBuild,请参阅AWS CodeBuild 用户指南中的创建 CodeBuild服务角色

注意

您还需要权限才能 CodeBuild 自行执行操作。Elastic Bean AdministratorAccessstalk-AWSElastic Beanstalk 托管用户策略包括所有必需的操作权限。 CodeBuild 如果您不使用托管策略,请确保在用户策略中允许以下权限。

"codebuild:CreateProject", "codebuild:DeleteProject", "codebuild:BatchGetBuilds", "codebuild:StartBuild"

有关详细信息,请参阅管理 Elastic Beanstalk 用户策略

ComputeType

Docker 容器在 CodeBuild 构建环境中使用的资源量。有效值为 BUILD_ _SMALL、BU GENERAL1 ILD_ _MEDIUM 和 BU GENERAL1 ILD_LARGE GENERAL1

Image

CodeBuild 用于构建环境的 Docker Hub 或 Amazon ECR 镜像的名称。此 Docker 镜像应包含构建代码所需的所有工具和运行时库,并且应与应用程序的目标平台相匹配。 CodeBuild 管理和维护一组专门用于 Elastic Beanstalk 的镜像。建议您使用其中一个。有关详细信息,请参阅《AWS CodeBuild 用户指南》 CodeBuild中提供的 Docker 镜像

Image 值是可选的。如果您省略此值,eb init 命令会尝试选择与目标平台最匹配的映像。此外,如果您在交互模式下运行 eb init 并且它无法为您选择映像,则会提示您选择一个映像。成功结束初始化时,eb init 将选中的映像写入到 buildspec.yml 文件中。

Timeout

CodeBuild 生成在超时之前运行的持续时间(以分钟为单位)。该值为可选项。有关有效值和默认值的详细信息,请参阅中的创建构建项目 CodeBuild

注意

此超时控制 CodeBuild 运行的最长持续时间,EB CLI 也将其视为创建应用程序版本的第一步的一部分。它与您通过 eb createeb deploy 命令的 --timeout 选项指定的值截然不同。后一个值控制 EB CLI 等待环境创建或更新的最大持续时间。

构建和部署您的应用程序代码

每当需要部署应用程序代码时,EB CLI 都会使用运行构建,然后 CodeBuild 将生成的构建项目部署到您的环境中。当您使用 eb create 命令为应用程序创建 Elastic Beanstalk 环境时,以及您以后每次使用 eb deploy 命令将代码更改部署到环境时,就会发生上述这种情况。

如果该 CodeBuild 步骤失败,则不会开始创建或部署环境。

本页内容

隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。