參考部署

AWS 上的 .NET Core CI/CD

部署自動化 .NET Core 應用程式管道

此解決方案可在 Amazon Web Services (AWS) 雲端上提供一個自動化的持續整合和持續交付 (CI/CD) 環境。它適用於希望為其 .NET Core 應用程式實作 CI/CD 管道的開發人員。

.NET Core CI/CD 環境使用 AWS CodePipeline、AWS CodeBuild 和 AWS CodeDeploy 管理應用程式更新。CI/CD 管道會輪詢 GitHub 儲存庫以獲取更新。每當在設定的儲存庫分支中修改程式碼時,管道都會擷取最新的原始程式碼並自動建置應用程式。然後將應用程式部署到執行 Amazon Linux 2 的 AWS Elastic Beanstalk 環境。

這種可擴展的部署可協助您快速可靠地交付功能和更新。您無需管理組建伺服器,僅需按實際用量付費。

此解決方案由 AWS 開發。

  •  您將建置的項目
  • 此解決方案設定以下內容:

    • Amazon Simple Storage Service (Amazon S3) 儲存貯體,用於保存成品。
    • 在部署應用程式的最新建置套件時,充當目標的 Elastic Beanstalk 環境。
    • 具有來源、建置和部署階段的 CI/CD 管道。

    每次設定的 GitHub 儲存庫分支中的程式碼變更時,來源階段都會叫用 CodePipeline。此階段會設定 GitHub,它可透過 webhooks 整合應用程式原始程式碼。然後它會擷取最新的 GitHub 程式碼並將其放置在 Source Artifacts 目錄中的 S3 儲存貯體中。

    建置階段會叫用 CodeBuild,後者可從 S3 儲存貯體中擷取原始程式碼。CodeBuild 提供的適用於 .NET Core 的 Amazon Linux 2 Docker 影像使用關聯的 BuildSpec.yml 檔案中提供的步驟編譯最新的原始程式碼。生成的建置套件可放置在 S3 儲存貯體中的 Build Artifacts 目錄中。

    部署階段會叫用 CodeDeploy,以從 S3 儲存貯體中擷取建置套件並將其部署到 Elastic Beanstalk 環境。

  •  部署方式
  • 若要部署 .NET Core CI/CD,請遵循部署指南中的說明操作。部署過程大約需要 10 分鐘,包括以下步驟:

    1. 如果您尚未擁有 AWS 帳戶,請到 https://aws.amazon.com 註冊並登入您的帳戶。
    2. 啟動解決方案
    3. 透過啟動 CI/CD 管道測試部署。您可以使用此解決方案內含的範例應用程式。

    Amazon 可能會與 AWS 合作夥伴 (與 AWS 在此解決方案上協作的合作夥伴) 分享使用者部署資訊。  

  •  成本和授權
  • 此解決方案無任何授權要求。

    執行此解決方案時,您須自行支付使用 AWS 服務和任何第三方授權的相關費用。使用此解決方案無須額外付費。

    此解決方案包括您能自訂的組態參數。其中某些設定 (例如執行個體類型) 會影響到部署的成本。若要估算成本,請參閱您所使用每項 AWS 服務的定價頁面。定價可能會隨時變更。

    提示:在部署解決方案後,建立  AWS Cost and Usage Report 以追蹤相關成本。這些報告會向您帳戶中的 Amazon Simple Storage Service (Amazon S3) 儲存貯體提供各個帳單指標。它們會根據每個月的用量提供成本估算,並在月底彙總資料。如需詳細資訊,請參閱 什麼是 AWS Cost and Usage Report?