本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
创建将构建输出托管在 S3 存储桶中的静态网站
您可以在构建中禁用构件加密。您可能需要禁用构件加密,以便将构件发布到配置为托管网站的位置。(您不能发布加密的构件。) 此示例演示如何使用 Webhook 触发构建并将其构件发布到配置为网站的 S3 存储桶。
-
按照设置静态网站中的说明操作,以配置一个以网站方式运行的 S3 存储桶。
在 https://console.aws.amazon.com/codesuite/codebuild
/home 中打开 AWS CodeBuild 控制台。 如果显示 CodeBuild 信息页面,请选择 “创建构建项目”。否则,请在导航窗格中,展开构建,选择构建项目,然后选择创建构建项目。
在项目名称中,输入此构建项目的名称。每个 AWS 账户中的构建项目名称必须是唯一的。您还可以包含构建项目的可选描述,以帮助其他用户了解此项目的用途。
-
在来源中,对于源提供商,选择GitHub。按照说明进行连接(或重新连接) GitHub,然后选择 “授权”。
对于 Webhook,选择每次将代码更改推送到此存储库时都会重新构建。仅当您已选中在我的账户中使用存储库时才选中此复选框。
在环境中:
对于环境映像,执行下列操作之一:
-
要使用由管理的 Docker 映像 AWS CodeBuild,请选择托管映像,然后从 “操作系统”、“运行时”、“映像” 和 “映像版本” 中进行选择。从环境类型中进行选择(如果可用)。
-
要使用其他 Docker 映像,请选择自定义映像。对于环境类型,请选择 Linux ARMGPU、Linux 或 Windows。如果选择 “其他注册表”,则在 “外部注册表” 中URL,使用格式输入 Docker Hub 中 Docker 镜像的名称和标签。
如果您选择亚马逊 ECR,请使用亚马逊ECR存储库和亚马逊ECR镜像在您的 AWS 账户中选择 Docker 镜像。docker repository
/docker image name
-
要使用私有 Docker 映像,请选择自定义映像。对于环境类型,请选择 Linux ARMGPU、Linux 或 Windows。对于镜像注册表,选择其他注册表,然后输入私有 Docker 镜像的凭据。ARN凭证必须由 Secrets Manager 创建。有关更多信息,请参阅《AWS Secrets Manager 用户指南》中的什么是 AWS Secrets Manager?。
-
在服务角色中,执行下列操作之一:
-
如果您没有 CodeBuild 服务角色,请选择 “新建服务角色”。在角色名称中,为新角色输入名称。
-
如果您有 CodeBuild 服务角色,请选择现有服务角色。在角色中ARN,选择服务角色。
注意
使用控制台创建或更新构建项目时,可以同时创建 CodeBuild 服务角色。默认情况下,这个角色仅能与该构建项目配合使用。如果您使用控制台将此服务角色与另一个构建项目关联,则此角色将更新以便与关联的构建项目结合使用。一个服务角色最多可与 10 个构建项目结合使用。
-
在 Buildspec 中,执行以下操作之一:
-
选择使用 buildspec 文件,以在源代码根目录中使用 buildspec.yml 文件。
-
选择插入构建命令,以使用控制台插入构建命令。
有关更多信息,请参阅 Buildspec 参考。
-
-
在构件中,对于类型,选择 Amazon S3 以将构建输出存储在 S3 存储桶中。
-
对于存储桶名称,选择您在步骤 1 中配置以用作网站的 S3 存储桶的名称。
-
如果您在环境中选择了插入构建命令,那么对于输出文件,请输入构建(该构建要放到输出存储桶中)中的文件位置。如果您有多个位置,请使用逗号分隔每个位置(例如,
appspec.yml, target/my-app.jar
)。有关更多信息,请参阅 Artifacts reference-key in the buildspec file。 -
选择禁用构件加密。
-
展开其他配置并根据需要选择选项。
-
选择 Create build project(创建构建项目)。在构建项目页面上的构建历史记录中,选择开始构建以运行构建。
-
(可选)按照《Amazon S3 开发者指南》中的 “示例:使用亚马逊加速您的网站” CloudFront 中的说明进行操作。