创建将构建输出托管在 S3 存储桶中的静态网站 - Amazon CodeBuild
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 Amazon Web Services 服务入门

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

创建将构建输出托管在 S3 存储桶中的静态网站

您可以在构建中禁用构件加密。您可能需要禁用构件加密,以便将构件发布到配置为托管网站的位置。(您不能发布加密的构件。) 此示例演示如何使用 Webhook 触发构建并将其构件发布到配置为网站的 S3 存储桶。

  1. 按照设置静态网站中的说明操作,以配置一个以网站方式运行的 S3 存储桶。

  2. 打开Amazon CodeBuild控制台https://console.aws.amazon.com/codesuite/codebuild/home.

  3. 如果 a CodeBuild 显示信息页面,选择创建构建项目. 否则,在导航窗格中,展开Build(生成),选择建立项目,然后选择创建构建项目.

  4. Project name (项目名称),输入此构建项目的名称。构建项目名称在您的各个 Amazon 账户内必须是唯一的。您还可以添加构建项目的可选描述,以帮助其他用户了解该项目的用途。

  5. Source (源) 中,对于 Source provider (源提供商),选择 GitHub。按照以下说明连接(或重新连接) GitHub,然后选择Auth.

    对于 Webhook,选择 Rebuild every time a code change is pushed to this repository (每次将代码更改推送到此存储库时都会重新生成)。仅当您已选中 Use a repository in my account (在我的账户中使用存储库) 时才选中此复选框。

  6. Environment (环境) 中:

    对于 Environment image (环境映像),执行下列操作之一:

    • 要使用由 Amazon CodeBuild 托管的 Docker 映像,请选择 Managed image (托管映像),然后从 Operating system (操作系统)Runtime(s) (运行时)Image (映像) 以及 Image version (映像版本) 中进行相应选择。从 Environment type (环境类型) 中进行选择(如果可用)。

    • 要使用其他 Docker 映像,请选择 Custom image (自定义映像)。对于环境类型,选择手臂,Linux的,Linuix,或Windows. 如果...其他注册表,对于外部注册表 URL,在 Docker Hub 中输入 Docker 镜像的名称和标签,格式为docker repository/docker image name. 如果...Amazon ECR,使用Amazon ECR 存储库Amazon ECR 镜像图在你的 Docker 镜像中选择一个Amazon账户。

    • 要使用私有 Docker 镜像,请选择自定义映像. 对于环境类型,选择手臂,Linux的,Linuix,或Windows. 对于 Image registry (映像注册表),选择 Other registry (其他注册表),然后输入您的私有 Docker 映像的凭证的 ARN。证书必须由Secrets Manager 创建。有关更多信息,请参阅 。什么是Amazon Secrets Manager?在里面Amazon Secrets Manager用户指南.

  7. Service role (服务角色) 中,执行下列操作之一:

    • 如果你没有 CodeBuild 服务角色,选择新增服务. 在 Role name 中,为新角色输入名称。

    • 如果您... CodeBuild 服务角色,选择现有服务角色. 中角色的 ARN,请选择服务角色。

    注意

    当您使用控制台创建或更新构建项目时,可以创建 CodeBuild 同时担任服务角色。默认情况下,这个角色仅能与该构建项目配合使用。如果您使用控制台将此服务角色与另一个构建项目关联,则此角色将更新以便与关联的构建项目结合使用。一个服务角色最多可与 10 个构建项目结合使用。

  8. Builde,执行以下操作之一:

    • 选择使用编译规范文件在源代码根目录中使用 buildspec.yml 文件。

    • 选择插入构建命令使用控制台插入编译命令。

    有关更多信息,请参见 构建规范参考

  9. Artifacts,对于类型,选择Amazon S3将构建输出存储在 S3 存储桶中。

  10. 对于 Bucket name (存储桶名称),选择您在步骤 1 中配置以用作网站的 S3 存储桶的名称。

  11. 如果你选择了插入构建命令Environment,然后对于输出文件,输入要放入输出存储桶的版本中的文件的位置。如果您有多个位置,请使用逗号分隔每个位置(例如,appspec.yml, target/my-app.jar)。有关更多信息,请参阅 Artifacts reference-key in the buildspec file

  12. 选择 Disable artifacts encryption (禁用构件加密)

  13. 展开 Additional configuration (其他配置) 并根据需要选择选项。

  14. 选择 Create build project (创建构建项目)。在生成项目页面上的 Build history (生成历史记录) 中,选择 Start build (启动生成) 以运行生成。

  15. (可选)按照中的说明进行操作示例:使用Amazon 为网站提速 CloudFront在里面Amazon S3 开发人员指南中).