CodePipeline 最佳實務和使用案例 - AWS CodePipeline

本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。

CodePipeline 最佳實務和使用案例

下列各節說明 CodePipeline 的最佳實務。

CodePipeline 的使用案例

您可以建立與其他 整合的管道 AWS 服務。這些可以是 AWS 服務,例如 Amazon S3,或第三方產品,例如 GitHub。本節提供使用 CodePipeline 以使用不同產品整合自動化程式碼發行的範例。如需依動作類型組織之 CodePipeline 整合的完整清單,請參閱 CodePipeline 管道結構參考

搭配 Amazon S3 使用 CodePipeline AWS CodeCommit,以及 AWS CodeDeploy

當您建立管道時,CodePipeline 會與產品和服務整合,這些 AWS 產品和服務會在管道的每個階段中做為動作提供者。當您在精靈中選擇階段時,必須選擇來源階段以及至少建置或部署階段。此精靈會使用無法變更的預設名稱來建立階段。這些階段名稱是您在精靈中設定完整三階段管道時所建立:

  • 預設名稱為 "Source" 的來源動作階段。

  • 預設名稱為 "Build" 的建置動作階段。

  • 預設名稱為 "Staging" 的部署動作階段。

您可以使用本指南中的教學來建立管道並指定階段:

  • 中的步驟教學:建立簡易管道 (S3 儲存貯體)可協助您使用精靈建立具有兩個預設階段的管道:「來源」和「預備」,其中 Amazon S3 儲存庫是來源提供者。本教學課程會建立管道,使用 AWS CodeDeploy 將範例應用程式從 Amazon S3 儲存貯體部署至執行 Amazon Linux 的 Amazon EC2 執行個體。

  • 中的步驟教學課程:建立簡單的管道 (CodeCommit 儲存庫)可協助您使用精靈建立具有「來源」階段的管道,該階段使用儲存 AWS CodeCommit 庫做為來源提供者。本教學課程會建立管道,使用 AWS CodeDeploy 將範例應用程式從 AWS CodeCommit 儲存庫部署到執行 Amazon Linux 的 Amazon EC2 執行個體。

與第三方動作提供者 (GitHub 和 Jenkins) 搭配使用 CodePipeline

您可以建立與第三方產品 (例如 GitHub 和 Jenkins) 整合的管道。教學:建立四階段管道中的步驟顯示如何建立管道,以:

  • 從 GitHub 儲存庫取得來源碼、

  • 使用 Jenkins 建置和測試來源碼、

  • 使用 將建置和測試 AWS CodeDeploy 的原始程式碼部署到執行 Amazon Linux 或 Microsoft Windows Server 的 Amazon EC2 執行個體。

使用 CodePipeline 透過 CodeBuild 編譯、建置和測試程式碼

CodeBuild 是雲端中的受管建置服務,可讓您在沒有伺服器或系統的情況下建置和測試程式碼。將 CodePipeline 與 CodeBuild 搭配使用,以自動透過管道執行修訂,以便在原始程式碼發生變更時持續交付軟體組建。如需詳細資訊,請參閱搭配使用 CodePipeline 與 CodeBuild 來測試程式碼並執行組建。

將 CodePipeline 與 Amazon ECS 搭配使用,以持續將容器型應用程式交付至雲端

Amazon ECS 是一種容器管理服務,可讓您將容器型應用程式部署至雲端中的 Amazon ECS 執行個體。將 CodePipeline 與 Amazon ECS 搭配使用,以在來源映像儲存庫發生變更時,透過管道自動執行修訂,以持續部署容器型應用程式。如需詳細資訊,請參閱教學課程:使用 CodePipeline 持續部署

搭配 Elastic Beanstalk 使用 CodePipeline,持續將 Web 應用程式交付至雲端

Elastic Beanstalk 是一種運算服務,可讓您將 Web 應用程式和服務部署到 Web 伺服器。搭配 Elastic Beanstalk 使用 CodePipeline,將 Web 應用程式持續部署到您的應用程式環境。您也可以使用 AWS CodeStar 建立具有 Elastic Beanstalk 部署動作的管道。

使用 CodePipeline 搭配 AWS Lambda 持續交付 Lambda 型和無伺服器應用程式

您可以 AWS Lambda 搭配 CodePipeline 使用 來叫用 AWS Lambda 函數,如部署無伺服器應用程式中所述。您也可以使用 AWS Lambda 和 建立管道 AWS CodeStar 來部署無伺服器應用程式。

搭配 AWS CloudFormation 範本使用 CodePipeline,以持續交付至雲端

您可以 AWS CloudFormation 搭配 CodePipeline 使用 來持續交付和自動化。如需詳細資訊,請參閱使用 CodePipeline. 持續交付。 AWS CloudFormation 也用於建立在 中建立管道的範本 AWS CodeStar。