本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
創建應用程序運行器服務
AWS App Runner 自動從容器映像檔或原始程式碼儲存庫轉換為可自動調整規模的執行中 Web 服務。您可以將 App Runner 指向來源影像或程式碼,只指定少量必要的設定。如果需要,App Runner 會建置您的應用程式、佈建運算資源,並部署應用程式以在其上執行。
當您建立服務時,應用程式執行器會建立服務資源。在某些情況下,您可能需要提供連線資源。如果您使用 App Runner 主控台,則主控台會以隱含方式建立連線資源。如需應用程式執行器資源類型的詳細資訊,請參閱應用程序運行器。這些資源類型的配額都與您的帳號相關聯 AWS 區域。如需詳細資訊,請參閱 應用運行器資源配額。
根據來源類型和提供者的不同,建立服務的程序會有細微差異。本主題涵蓋建立這些來源類型的不同程序,以便您可以遵循適合您情況的任何項目。若要使用程式碼範例啟動基本程序,請參閱開始使用應用程式執行器。
必要條件
在您建立 App Runner 服務之前,請務必完成下列動作:
-
完成中的設定步驟設定應用程式執行器。
-
確保您的應用程序源已準備就緒。您可以使用中的代碼存儲庫 GitHub
,Bitbucket 或 Amazon E lastic Container Registry (Amazon ECR) 中的容器映像來創建應用程序運行器服務。
建立服務
本節將逐步介紹兩種 App Runner 服務類型的建立程序:根據原始程式碼,並以容器映像為基礎。
注意
如果您為服務建立輸出流量 VPC 連接器,接下來的服務啟動程序將會遇到一次性延遲。您可以在建立新服務時或之後使用服務更新來設定此組態。如需詳細資訊,請參閱本指南的 < 使用應用程式執行器聯網 > 一章一次性延遲中的。
以下各節說明當您的原始碼是GitHub
當您建立服務時,App Runner 會建置包含應用程式程式碼和相依性的 Docker 映像檔。然後,它會啟動執行此映像檔之容器執行個體的服務。
使用應用程式執行器主控台從程式碼建立服務
使用主控台建立應用程式執行器服務
-
設定您的原始程式碼。
-
開啟應用程式執行器主控台
,然後在 [區域] 清單中選取您的 AWS 區域. -
如果還 AWS 帳戶 沒有任何應用程序運行器服務,則顯示控制台主頁。選擇創建應用程序運行器服務。
如果 AWS 帳戶 已有服務,則會顯示含有您服務清單的「服務」頁面。選擇 Create service (建立服務)。
-
在「來源與部署」頁面的「來源」段落中,選擇「來源程式碼儲存區域」做為「儲存區域」類型。
-
選取提供者類型。選擇任一GitHub或比特桶。
-
接下來,為您之前使用過的提供者選取帳戶或組織,或選擇 [新增]。然後,完成提供代碼存儲庫憑據並選擇要連接的帳戶或組織的過程。
-
在「存放庫」中,選取包含應用程式程式碼的儲存庫。
-
針對「分支」,選取您要部署的分支。
-
在來源目錄中,輸入儲存應用程式程式碼和組態檔的來源儲存庫中的目錄。
注意
建置和 start 指令會從您指定的來源目錄執行。應用程序運行器從根處理絕對路徑。如果您未在此處指定值,則目錄預設為儲存庫根目錄。
-
-
設定您的部署。
-
在「部署設定」區段中,選擇「手動」或「自動」。
如需部署方法的更多資訊,請參閱部署方法。
-
選擇下一步。
-
-
設定應用程式組建。
-
在 [設定組建] 頁面上,對於 [組態檔案],選擇 [設定所有設定] (如果您的存放庫不包含 App Runner 組態檔案),或選擇 [使用組態檔案 (如果有)]。
注意
App Runner 配置文件是將構建配置作為應用程序源的一部分進行維護的一種方法。當您提供一個時,App Runner 會從文件中讀取一些值,並且不允許您在控制台中設置它們。
-
提供下列組建設定:
-
執行階段 — 選擇應用程式的特定受管理執行階段。
-
建置命令 — 輸入從原始程式碼建置應用程式的命令。這可能是語言特定的工具或程式碼隨附的指令碼。
-
啟動命令 — 輸入啟動 Web 服務的指令。
-
連接埠 — 輸入 Web 服務接聽的 IP 連接埠。
-
-
選擇下一步。
-
-
設定您的服務。
-
在 [設定服務] 頁面的 [服務設定] 區段中,輸入服務名稱。
注意
所有其他服務設定都是選擇性的,或是具有主控台提供的預設值。
-
選擇性地變更或新增其他設定以符合您的應用程式需求。
-
選擇下一步。
-
-
在 [檢閱並建立] 頁面上,確認您輸入的所有詳細資料,然後選擇 [建立並部署]。
結果:如果成功建立服務,主控台會顯示服務儀表板,其中包含新服務的「服務」概觀。
-
確認您的服務正在執行。
-
在服務儀表板頁面上,等待服務狀態為「執行中」。
-
選擇預設網域值。這是您服務網站的 URL。
-
使用您的網站並驗證網站是否正常運行。
-
使用應用程式執行器 API 或從程式碼建立服務 AWS CLI
若要使用應用程式執行器 API 建立服務 AWS CLI,或呼叫 CreateService
API 動作。如需詳細資訊和範例,請參閱CreateService。如果這是您第一次使用原始程式碼儲存庫 (或 Bitbucket) 的特定組織GitHub 或帳戶建立服務,請先呼叫CreateConnection。這會在 App Runner 和儲存庫提供者的組織或帳戶之間建立連線。如需應用程式執行器連線的詳細資訊,請參閱管理應用程式執行器。
如果呼叫傳回顯示 Service 物件的成功回應"Status":
"CREATING"
,您的服務就會開始建立。
以下各節說明當您的來源是儲存在 Amazon ECR 中的容器映像時,如何建立應用程式執行器服務。Amazon ECR 是一個 AWS 服務. 因此,若要根據 Amazon ECR 映像建立服務,您需要為應用程式執行者提供包含必要 Amazon ECR 動作許可的存取角色。
注意
存放在 Amazon ECR 公共圖像可公開使用。因此,如果您的映像檔儲存在 Amazon ECR 公用中,則不需要存取角色。
建立您的服務時,App Runner 會啟動執行您提供之映像檔的容器執行個體的服務。在這種情況下沒有構建階段。
如需詳細資訊,請參閱 基於源圖像的應用程序運行器服務。
使用應用程式執行器主控台從映像建立服務
使用主控台建立應用程式執行器服務
-
設定您的原始程式碼。
-
開啟應用程式執行器主控台
,然後在 [區域] 清單中選取您的 AWS 區域. -
如果還 AWS 帳戶 沒有任何應用程序運行器服務,則顯示控制台主頁。選擇創建應用程序運行器服務。
如果 AWS 帳戶 已有服務,則會顯示含有您服務清單的「服務」頁面。選擇 Create service (建立服務)。
-
在 [來源與部署] 頁面的 [來源] 區段中,選擇 [容器登錄] 做為 [存放庫類型]。
-
針對「提供者」,請選擇儲存影像的提供者:
-
Amazon ECR — 存儲在 Amazon ECR 中的私有映像。
-
Amazon ECR 公共圖像 — 存儲在 Amazon ECR 公共區域中的可公開讀取圖像。
-
-
針對「容器映像 URI」,選擇「瀏覽」。
-
在 [選取 Amazon ECR 容器映像] 對話方塊中,對於映像儲存庫,選取包含映像的存放庫。
-
針對映像標籤,選取您要部署的特定映像標記 (例如最新),然後選擇 [繼續]。
-
-
設定您的部署。
-
在「部署設定」區段中,選擇「手動」或「自動」。
注意
應用程式執行器不支援 Amazon ECR 公開映像檔的自動部署,以及 Amazon ECR 儲存庫中屬於與您服務所在 AWS 帳戶不同的帳戶的映像。
如需部署方法的更多資訊,請參閱部署方法。
-
[Amazon ECR 提供者] 對於 ECR 存取角色,請選擇帳戶中的現有服務角色,或選擇建立新角色。如果您使用手動部署,也可以選擇在部署時使用 IAM 使用者角色。
-
選擇下一步。
-
-
設定您的服務。
-
在 [設定服務] 頁面的 [服務設定] 區段中,輸入服務名稱和服務網站接聽的 IP 連接埠。
注意
所有其他服務設定都是選擇性的,或是具有主控台提供的預設值。
-
(選擇性) 變更或新增其他設定以符合應用程式的需求。
-
選擇下一步。
-
-
在 [檢閱並建立] 頁面上,確認您輸入的所有詳細資料,然後選擇 [建立並部署]。
結果:如果成功建立服務,則主控台會顯示服務儀表板,以及新服務的「服務」概觀。
-
確認您的服務正在執行。
-
在服務儀表板頁面上,等待服務狀態為「執行中」。
-
選擇預設網域值。這是您服務網站的 URL。
-
使用您的網站並驗證網站是否正常運行。
-
使用應用程序運行器 API 或從圖像創建服務 AWS CLI
若要使用應用程式執行器 API 建立服務 AWS CLI,或呼叫 CreateServiceAPI 動作。
如果呼叫傳回成功回應且顯示 Service 物件,您的服務建立就會開始"Status": "CREATING"
。