快速入門:從本地原始程式碼組建並部署至 Azure 容器應用程式

本文示範如何從本地原始碼,使用您選擇的程式語言,建置並部署微服務至 Azure 容器應用。 在這個快速入門中,你會建立一個後端網路 API 服務,回傳一個靜態的音樂專輯集合。

以下截圖顯示的是你部署的專輯 API 服務的輸出。

相簿 API 端點的回應截圖。

必要條件

若要完成此專案,您需要下列項目:

需求 使用說明
Azure 帳戶 如果您沒有帳戶,可免費建立帳戶。 您需要 Azure 訂用帳戶的「參與者」或「擁有者」權限才能繼續。

詳情請參閱 使用 Azure portal 分配 Azure 角色 。
Git 安裝 Git。
Azure CLI 安裝 Azure CLI。

設定

若要從 CLI 登入 Azure,請執行下列命令,並遵循提示來完成驗證流程。

az login

為了確保你使用的是最新版本的 CLI,請執行升級指令:

az upgrade

接著,安裝或更新 CLI 的容器應用程式擴充功能:

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 設定已完成,您可以定義本文中使用的環境變數。

請在你的 Bash shell 中定義以下變數:

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 工作區建立 Container Apps 環境。
  • 使用建置的容器映像來建立及部署容器應用程式。

此 up 指令使用 project 資料夾中的 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 的回應。

相簿 API 端點的回應截圖。

限制

上傳原始碼的最大容量為 200 MB。 若上傳過大,則會回傳錯誤 413。

清除資源

如果你不打算繼續做 Deploy 前端 教學,可以用以下指令移除這個快速入門時建立的 Azure 資源。

警告

下列命令會刪除指定的資源群組和其中包含的所有資源。 如果群組包含超出此快速入門範圍的資源,也會被刪除。

az group delete --name $RESOURCE_GROUP

提示

有問題嗎? 在 Azure 容器應用程式存放庫中提出問題,讓我們在 GitHub 上了解該問題。

後續步驟

完成此快速入門後,你可以繼續閱讀 教學:Azure 容器應用中微服務間的通訊 ,學習如何部署呼叫 API 的前端應用程式。