快速入門:從本地原始程式碼組建並部署至 Azure 容器應用程式
本文示範如何使用您選擇的程式設計語言從本地原始程式碼組建微服務,並將其部署至 Azure 容器應用程式。 在這個快速入門中,您會建立後端 Web API 服務,以傳回靜態音樂專輯集合。
以下螢幕擷取畫面顯示您部署之專輯 API 服務的輸出。
必要條件
若要完成此專案,您需要下列項目:
需求 | 指示 |
---|---|
Azure 帳戶 | 如果您沒有帳戶,可免費建立帳戶。 您需要 Azure 訂用帳戶的「參與者」或「擁有者」權限才能繼續。 如需詳細資料,請參閱使用 Azure 入口網站指派 Azure 角色。 |
Git | 安裝 Git。 |
Azure CLI | 安裝 Azure CLI。 |
設定
若要從 CLI 登入 Azure,請執行下列命令,並遵循提示來完成驗證流程。
az login
若要確定您執行的是最新版本 CLI,請執行升級命令。
az upgrade
接下來,安裝或更新 CLI 的 Azure 容器應用程式延伸模組。
az extension add --name containerapp --upgrade --allow-preview true
現在已安裝目前的擴充功能,請註冊 Microsoft.App
和 Microsoft.OperationalInsights
命名空間。
az provider register --namespace Microsoft.App
az provider register --namespace Microsoft.OperationalInsights
建立環境變數
現在您的 CLI 設定已完成,您可以定義本文中使用的環境變數。 現在您的 CLI 設定已完成,您可以定義本文中使用的環境變數。
在您的 Bash 殼層中定義下列變數。
export RESOURCE_GROUP="album-containerapps"
export LOCATION="canadacentral"
export ENVIRONMENT="env-album-containerapps"
export API_NAME="album-api"
取得範例程式碼
執行下列命令,以您選擇的語言複製範例應用程式,並變更為專案源資料夾。
git clone https://github.com/azure-samples/containerapps-albumapi-csharp.git
cd containerapps-albumapi-csharp/src
組建並部署容器應用程式
首先,執行下列命令來建立資源群組,其中包含您在本快速入門中建立的資源。
az group create --name $RESOURCE_GROUP --location $LOCATION
使用 containerapp up
命令組建並部署您第一個容器應用程式。 這個命令會:
- 建立資源群組
- 建立 Azure Container Registry
- 組建容器映像,並推送至登錄
- 使用 Log Analytics 工作區建立 Azure 容器應用程式環境
- 使用組建的容器映像建立並部署容器應用程式
命令 up
會使用項目資料夾中的 Dockerfile 來建置容器映像。 EXPOSE
Dockerfile 中的指示會定義目標埠,這是用來將輸入流量傳送至容器的埠。
在下列程式代碼範例中 .
,(dot) 會指示 containerapp up
在同時包含 Dockerfile 的專案目前目錄中執行。
az containerapp up \
--name $API_NAME \
--resource-group $RESOURCE_GROUP \
--location $LOCATION \
--environment $ENVIRONMENT \
--source .
注意
如果命令傳回「AADSTS50158:外部安全性挑戰未滿足」訊息的錯誤,請執行 az login --scope https://graph.microsoft.com//.default
以所需的許可權登入,然後再次執行 az containerapp up
命令。
驗證部署
在命令的 az containerapp up
輸出中找出容器應用程式的URL。 瀏覽至瀏覽器中的 URL。 將 新增 /albums
至 URL 的結尾,以查看來自 API 的回應。
限制
上傳原始程式碼的大小上限為 200 MB。 如果上傳超過限制,則會傳回錯誤 413。
清除資源
如果您不打算繼續進行部署前端教學課程,您可以使用下列命令移除快速入門期間建立的 Azure 資源。
警告
下列命令會刪除指定的資源群組和其中包含的所有資源。 若群組包含本快速入門範圍以外的資源,則也會將其刪除。
az group delete --name $RESOURCE_GROUP
提示
有問題嗎? 在 Azure 容器應用程式存放庫中提出問題,讓我們在 GitHub 上了解該問題。
下一步
完成本快速入門之後,您可以繼續進行教學課程:Azure 容器應用程式中的微服務之間的通訊,以了解如何部署呼叫 API 的前端應用程式。