Share via


使用 Azure CLI 建立 App Service 資源

適用於: SDK v4

本文說明如何使用 Azure CLI 和 Azure Resource Manager 範本 (ARM 範本) 建立 App Service 資源,作為布建和發布 Bot 程式的一部分。 App Service 有時稱為 Web 應用程式

重要

Python Bot 無法部署到包含 Windows 服務或 Bot 的資源群組。 多個 Python Bot 可以部署到相同的資源群組;不過,您必須在另一個資源群組中建立其他服務(例如 Azure AI 服務)。

注意

Bot Framework JavaScript、C# 和 Python SDK 將會繼續受到支援,不過,Java SDK 即將淘汰,最終長期支援將於 2023 年 11 月結束。

使用 Java SDK 建置的現有 Bot 將繼續運作。

針對新的 Bot 建置,請考慮使用 Power Virtual Agents ,並閱讀 選擇正確的聊天機器人解決方案

如需詳細資訊,請參閱 Bot 建置的未來。

必要條件

若要使用 Azure CLI 來布建和發佈 Bot,您需要:

  • 具有有效訂用帳戶的 Azure 帳戶。 建立免費帳戶

  • Azure CLI 的安裝。

    針對您的程式設計語言,請使用下列版本的 Azure CLI。 某些步驟不適用於較新版本的 CLI。

    語言 CLI 版本
    C# 和 JavaScript 2.39.0 或更新版本
    Python 2.55.0 或更新版本
    Java 2.29.2
  • 此程式會使用 Azure Resource Manager 範本(ARM 範本)為您的 Bot 建立 App Service 資源。

    如果您沒有目前的範本,請在 deploymentTemplates 資料夾的 Bot 專案中建立複本:C#JavaScriptPythonJava

提示

這是布建和發佈 Bot 之較大程式的一部分。 如需必要條件的完整清單,請參閱如何 布建和發佈 Bot

編輯參數檔案

編輯 ARM 範本的參數檔案,以包含您想要使用的值。

重要

您必須針對 App Service 和 Azure Bot 資源使用相同的 appType 值。

如果您的專案尚未包含最新的 ARM 範本和參數檔案,您可以從適用於您語言的 Bot Framework SDK 存放庫複製它們: C#JavaScriptPythonJava

下表描述 參數檔案中的部署參數 ,以搭配 parameters 命令選項使用。 根據預設,參數檔案的名稱是 parameters-for-template-BotApp-with-rg.json

參數 類型 描述
appServiceName String 必要。 App Service 的全域唯一名稱。
existingAppServicePlanName String 選擇性。 要為其建立 Bot 應用程式服務的現有 App Service 方案名稱
existingAppServicePlanLocation String 選擇性。 現有App Service 方案的位置
newAppServicePlanName String 選擇性。 新 App Service 方案的名稱
newAppServicePlanLocation String 選擇性。 新 App Service 方案的位置
newAppServicePlanSku Object 選擇性。 新 App Service 方案的 SKU。 預設值為 S1 (標準) 服務方案。
appType String 必要。 Bot 資源的身分識別如何管理。 允許的值:「MultiTenant」、“SingleTenant” 和 “UserAssignedMSI”。 預設值為 「MultiTenant」。
appId String 必要。 您稍早建立之身分識別資源的用戶端識別碼或應用程式識別碼。 這會作為App Service 的 Microsoft 應用程式識別碼。
appSecret String 選擇性。 對於單一租使用者和多租使用者應用程式類型,則為身分識別資源的密碼。
UMSIName String 選擇性。 針對使用者指派的受控識別應用程式類型,識別資源的名稱。
UMSIResourceGroupName String 選擇性。 針對使用者指派的受控識別應用程式類型,識別資源的資源群組。
tenantId String 選擇性。 針對使用者指派的受控識別和單一租使用者應用程式類型,身分識別資源的 Microsoft Entra ID 租使用者標識符。

並非所有參數都適用於所有應用程式類型。

  • 提供、 UMSIResourceGroupNametenantId的值UMSIName
  • 保留 appSecret 空白。

某些參數是使用現有或新的 App Service 方案的特定參數。

  • 提供和existingAppServicePlanLocation的值existingAppServicePlanName
  • 保留 newAppServicePlanNamenewAppServicePlanLocationnewAppServicePlanSku 空白。

建立應用程式服務

為您的 Bot 建立 App Service。

az deployment group create --resource-group <resource-group> --template-file <template-file-path> --parameters "@<parameters-file-path>"
選項 描述
資源群組 要在其中建立App Service 的 Azure 資源群組名稱。
template-file 應用程式服務的 ARM 範本路徑。 路徑可為相對路徑或絕對路徑。
parameters 要與 ARM 範本搭配使用的參數檔案路徑。 路徑可為相對路徑或絕對路徑。

對於使用最新產生器建立的專案,ARM 範本和參數檔案位於 專案的 DeploymentTemplates\DeployUseExistResourceGroup 資料夾中。 默認檔名為 template-BotApp-with-rg.jsonparameters-for-template-BotApp-with-rg.json

提示

  • 應用程式服務的基底 URL 是以 App Service 名稱為基礎: https:<app-service-name>.azurewebsites.net
  • Bot 的傳訊端點會是基底 URL 加上 /api/messages,例如 https:<app-service-name>.azurewebsites.net/api/messages

其他資訊

如需 ARM 範本的詳細資訊,請參閱 什麼是 ARM 範本? 以及如何 搭配 Azure CLI 使用 Azure Resource Manager (ARM) 部署範本。

下一步

如果您已建立 App Service 作為 Bot 部署的一部分,請參閱 使用 ARM 範本 建立資源以繼續程式。