Azure CLI를 사용하여 App Service 리소스 만들기
적용 대상: SDK v4
이 문서에서는 봇을 프로비전하고 게시하는 프로세스의 일부로 Azure CLI 및 ARM 템플릿(Azure Resource Manager 템플릿)을 사용하여 App Service 리소스를 만드는 방법을 설명합니다. 앱 서비스를 웹앱이라고도 합니다.
Important
Python 봇은 Windows 서비스 또는 봇이 포함된 리소스 그룹에 배포할 수 없습니다. 여러 Python 봇을 동일한 리소스 그룹에 배포할 수 있습니다. 그러나 다른 리소스 그룹에 다른 서비스(예: Azure AI 서비스)를 만들어야 합니다.
- 전체 프로세스에 대한 자세한 내용은 봇을 프로비전하고 게시하는 방법을 참조하세요.
- Azure Bot 리소스를 만드는 방법에 대한 자세한 내용은 Azure CLI를 사용하여 Azure Bot 리소스를 만듭니다.
참고 항목
Bot Framework JavaScript, C#및 Python SDK는 계속 지원되지만 Java SDK는 2023년 11월에 종료되는 최종 장기 지원으로 사용 중지됩니다.
Java SDK를 사용하여 빌드된 기존 봇은 계속 작동합니다.
새 봇 빌드의 경우 Microsoft Copilot Studio를 사용하고 올바른 부조종사 솔루션 선택에 대해 알아봅니다.
자세한 내용은 봇 빌드의 미래를 참조 하세요.
필수 조건
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입니다. |
모든 매개 변수가 모든 앱 형식에 적용되는 것은 아닙니다.
- 및 에
UMSIResourceGroupName
tenantId
대한UMSIName
값을 제공합니다. - 비워 둡니다
appSecret
.
일부 매개 변수는 기존 또는 새 App Service 계획 사용과 관련이 있습니다.
- 및 에 대한
existingAppServicePlanName
existingAppServicePlanLocation
값을 제공합니다. - 를
newAppServicePlanLocation
newAppServicePlanSku
비워 둡니다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/messages
https:<app-service-name>.azurewebsites.net/api/messages
됩니다.
추가 정보
ARM 템플릿에 대한 자세한 내용은 ARM 템플릿이란? 및 Azure CLI에서 ARM(Azure Resource Manager) 배포 템플릿을 사용하는 방법을 참조하세요.
다음 단계
봇 배포의 일부로 App Service를 만든 경우 ARM 템플릿을 사용하여 리소스 만들기를 참조하여 프로세스를 계속합니다.