다음을 통해 공유


Azure CLI를 사용하여 App Service 리소스 만들기

적용 대상: SDK v4

이 문서에서는 봇을 프로비전하고 게시하는 프로세스의 일부로 Azure CLI 및 ARM 템플릿(Azure Resource Manager 템플릿)을 사용하여 App Service 리소스를 만드는 방법을 설명합니다. 앱 서비스를 웹앱이라고도 합니다.

Important

Python 봇은 Windows 서비스 또는 봇이 포함된 리소스 그룹에 배포할 수 없습니다. 여러 Python 봇을 동일한 리소스 그룹에 배포할 수 있습니다. 그러나 다른 리소스 그룹에 다른 서비스(예: Azure AI 서비스)를 만들어야 합니다.

참고 항목

Bot Framework JavaScript, C#및 Python SDK는 계속 지원되지만 Java SDK는 2023년 11월에 종료되는 최종 장기 지원으로 사용 중지됩니다.

Java SDK를 사용하여 빌드된 기존 봇은 계속 작동합니다.

새 봇 빌드의 경우 Power Virtual Agents 사용을 고려하고 올바른 챗봇 솔루션을 선택하는 방법을 읽어 보세요.

자세한 내용은 봇 빌드의 미래를 참조 하세요.

필수 조건

Azure CLI를 사용하여 봇을 프로비전하고 게시하려면 다음이 필요합니다.

  • 활성 구독이 있는 Azure 계정. 무료 계정을 만듭니다.

  • Azure CLI 설치

    프로그래밍 언어의 경우 다음 버전의 Azure CLI를 사용합니다. 일부 단계는 이후 버전의 CLI에서 작동하지 않습니다.

    언어 CLI 버전
    C# 및 JavaScript 2.39.0 이상
    Python 2.55.0 이상
    Java 2.29.2
  • 이 프로세스는 ARM 템플릿(Azure Resource Manager 템플릿)을 사용하여 봇에 대한 App Service 리소스를 만듭니다.

    현재 템플릿이 없는 경우 c#, JavaScript, Python 또는 Java와 같은 deploymentTemplates 폴더의 봇 프로젝트에 복사본을 만듭니다.

이는 봇을 프로비전하고 게시하는 더 큰 프로세스의 일부입니다. 필수 구성 요소의 전체 목록을 위해 봇을 프로비전하고 게시하는 방법을 참조하세요.

매개 변수 파일 편집

사용하려는 값을 포함하도록 ARM 템플릿의 매개 변수 파일을 편집합니다.

Important

App Service 및 Azure Bot 리소스에 대해 동일한 appType 값을 사용해야 합니다.

프로젝트에 최신 ARM 템플릿 및 매개 변수 파일이 아직 포함되어 있지 않은 경우 C#, JavaScript, Python 또는 Java 언어에 대한 Bot Framework SDK 리포지토리에서 복사할 수 있습니다.

이 표에서는 명령 옵션과 함께 사용할 매개 변수 파일의 배포 매개 변수 에 대해 parameters 설명합니다. 기본적으로 매개 변수 파일 의 이름은 parameters-for-template-BotApp-with-rg.json.

매개 변수 형식 설명
appServiceName 문자열 필수입니다. 앱 서비스의 전역적으로 고유한 이름입니다.
existingAppServicePlanName 문자열 선택 사항. 봇에 대한 앱 서비스를 만들 기존 App Service 계획의 이름입니다.
existingAppServicePlanLocation 문자열 선택 사항. 기존 App Service 계획의 위치입니다.
newAppServicePlanName 문자열 선택 사항. 새 App Service 계획의 이름입니다.
newAppServicePlanLocation 문자열 선택 사항. 새 App Service 계획의 위치입니다.
newAppServicePlanSku Object 선택 사항. 새 App Service 계획에 대한 SKU입니다. 기본값은 S1(표준) 서비스 계획입니다.
appType 문자열 필수입니다. 봇 리소스의 ID를 관리하는 방법. 허용되는 값: "MultiTenant", "SingleTenant" 및 "UserAssignedMSI". 기본값은 "MultiTenant"입니다.
appId 문자열 필수입니다. 이전에 만든 ID 리소스의 클라이언트 ID 또는 앱 ID입니다. 앱 서비스의 Microsoft 앱 ID로 사용됩니다.
appSecret 문자열 선택 사항. 단일 테넌트 및 다중 테넌트 앱 유형의 경우 ID 리소스에 대한 암호입니다.
UMSIName 문자열 선택 사항. 사용자 할당 관리 ID 앱 형식의 경우 ID 리소스의 이름입니다.
UMSIResourceGroupName 문자열 선택 사항. 사용자 할당 관리 ID 앱 유형의 경우 ID 리소스에 대한 리소스 그룹입니다.
tenantId 문자열 선택 사항. 사용자 할당 관리 ID 및 단일 테넌트 앱 유형의 경우 ID 리소스에 대한 Microsoft Entra ID 테넌트 ID입니다.

모든 매개 변수가 모든 앱 형식에 적용되는 것은 아닙니다.

  • 및 에 UMSIResourceGroupNametenantId대한 UMSIName값을 제공합니다.
  • 비워 둡니다 appSecret .

일부 매개 변수는 기존 또는 새 App Service 계획 사용과 관련이 있습니다.

  • 및 에 대한 existingAppServicePlanNameexistingAppServicePlanLocation값을 제공합니다.
  • newAppServicePlanLocationnewAppServicePlanSku 비워 둡니다newAppServicePlanName.

앱 서비스 개발하기

봇에 대한 앱 서비스를 만듭니다.

az deployment group create --resource-group <resource-group> --template-file <template-file-path> --parameters "@<parameters-file-path>"
옵션 설명
resource-group 앱 서비스를 만들 Azure 리소스 그룹의 이름입니다.
template-file 앱 서비스에 대한 ARM 템플릿의 경로입니다. 경로는 상대적이거나 절대적일 수 있습니다.
매개 변수 ARM 템플릿과 함께 사용할 매개 변수 파일의 경로입니다. 경로는 상대적이거나 절대적일 수 있습니다.

최신 생성기를 사용하여 만든 프로젝트의 경우 ARM 템플릿 및 매개 변수 파일은 프로젝트 내의 DeploymentTemplates\DeployUseExistResourceGroup 폴더에 있습니다. 기본 파일 이름은 template-BotApp-with-rg.json parameters-for-template-BotApp-with-rg.json.

  • 앱 서비스의 기본 URL은 앱 서비스 이름을 https:<app-service-name>.azurewebsites.net기반으로 합니다.
  • 봇에 대한 메시징 엔드포인트는 다음과 같은 기본 URL과 함께 /api/messageshttps:<app-service-name>.azurewebsites.net/api/messages됩니다.

추가 정보

ARM 템플릿에 대한 자세한 내용은 ARM 템플릿이란? 및 Azure CLI에서 ARM(Azure Resource Manager) 배포 템플릿을 사용하는 방법을 참조하세요.

다음 단계

봇 배포의 일부로 App Service를 만든 경우 ARM 템플릿을 사용하여 리소스 만들기를 참조하여 프로세스를 계속합니다.