將新的應用程式版本部署至 App Runner - AWS App Runner

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

將新的應用程式版本部署至 App Runner

當您在 中建立 服務時 AWS App Runner,您可以設定應用程式來源:容器映像或來源儲存庫。App Runner 會佈建資源來執行您的服務,並將您的應用程式部署到這些服務。

本主題描述當新版本推出時,將應用程式來源重新部署至 App Runner 服務的方法。這可以是映像儲存庫中的新映像版本,也可以是程式碼儲存庫中的新遞交。App Runner 提供兩種方法來部署至 服務:自動手動

部署方法

App Runner 提供下列方法,讓您控制應用程式部署的啟動方式。

自動部署

當您想要服務持續整合和部署 (CI/CD) 行為時,請使用自動部署。App Runner 會監控您的映像或程式碼儲存庫是否有變更。

映像儲存庫 – 每當您將新的映像版本推送至映像儲存庫,或新的遞交至程式碼儲存庫時,App Runner 會自動將其部署至您的服務,而無需您採取進一步的動作。

程式碼儲存庫 - 每當您將新的遞交推送到在來源目錄 中進行變更的程式碼儲存庫時,App Runner 都會部署整個儲存庫。由於只有來源目錄中的變更才會觸發自動部署,因此請務必了解來源目錄位置如何影響自動部署的範圍。

  • 頂層目錄 (儲存庫根目錄) – 這是您建立服務時為來源目錄設定的預設值。如果您的來源目錄設定為此值,這表示整個儲存庫位於來源目錄內。因此,您推送至來源儲存庫的所有遞交都會在此情況下觸發部署。

  • 任何不是儲存庫根的目錄路徑 (非預設) – 因為只有在來源目錄中推送的變更才會觸發自動部署,因此任何在來源目錄中推送到儲存庫的變更都不會觸發自動部署。因此,您必須使用手動部署來部署您在來源目錄之外推送的變更。

注意

App Runner 不支援 Amazon ECR Public 映像的自動部署,以及 Amazon ECR儲存庫中屬於您服務所在的不同 AWS 帳戶的影像。

手動部署

當您想要明確啟動服務的每個部署時,請使用手動部署。如果您為服務設定的儲存庫具有您要部署的新版本,則您可以啟動部署。如需詳細資訊,請參閱手動部署

注意

當您執行手動部署時,App Runner 會從完整的儲存庫部署來源。

您可以透過下列方式設定 服務的部署方法:

  • 主控台 – 對於您正在建立的新服務,或現有服務,請在來源和部署組態頁面的部署設定區段中,選擇手動自動

    App Runner 部署方法組態
比較自動和手動部署

自動和手動部署都會產生相同的結果:這兩種方法都會部署完整的儲存庫。

這兩種方法之間的差異是觸發機制:

  • 手動部署是由從主控台部署、呼叫 AWS CLI或呼叫 App Runner 所觸發API。以下手動部署章節提供這些程序。

  • 自動部署是由來源目錄 內容中的變更所觸發。

手動部署

使用手動部署時,您需要明確地啟動服務的每個部署。當您準備部署新版本的應用程式映像或程式碼時,您可以參閱下列章節,了解如何使用主控台和 執行部署API。

注意

當您執行手動部署時,App Runner 會從完整的儲存庫部署來源。

使用下列其中一種方法部署應用程式的版本:

App Runner console
使用 App Runner 主控台部署
  1. 開啟 App Runner 主控台 ,然後在區域清單中選取您的 AWS 區域。

  2. 在導覽窗格中,選擇服務 ,然後選擇您的 App Runner 服務。

    主控台會顯示服務儀表板,其中包含服務概觀

    App Runner 服務儀表板頁面,顯示活動清單
  3. 選擇部署

    結果:開始部署新版本。在服務儀表板頁面上,服務狀態會變更為進行中的操作。

  4. 等待部署結束。在服務儀表板頁面上,服務狀態應變更回執行中

  5. 若要驗證部署是否成功,請在服務儀表板頁面上選擇預設網域值,這是URL服務網站的 。檢查 Web 應用程式或與之互動,並驗證您的版本變更。

    注意

    為了增強 App Runner 應用程式的安全性,在公有字尾清單中註冊 *.awsapprunner.com 網域 ()。 PSL為了進一步安全,如果您需要在 App Runner 應用程式的預設網域名稱中設定敏感 Cookie,建議您使用具有__Host-字首的 Cookie。此做法將有助於保護您的網域免受跨站台請求偽造嘗試 (CSRF)。如需更多資訊,請參閱 Mozilla 開發人員網路中的設定 Cookie 頁面。

App Runner API or AWS CLI

若要使用 App Runner API或 部署 AWS CLI,請呼叫 StartDeploymentAPI動作。唯一要傳遞的參數是您的服務 ARN。您已在建立服務時設定應用程式來源位置,App Runner 可以尋找新版本。如果呼叫傳回成功回應,您的部署就會開始。