자습서: 서비스 커넥터를 사용하여 Azure Blob Storage에 연결된 웹 애플리케이션 배포
관리 ID를 사용하여 Azure App Service에서 실행되는 웹앱(로그인한 사용자가 아님)용 Azure Blob Storage에 액세스하는 방법을 알아봅니다. 이 자습서에서는 Azure CLI를 사용하여 다음 작업을 완료합니다.
- Azure CLI를 사용하여 초기 환경 설정
- 스토리지 계정 및 Azure Blob Storage 컨테이너를 만듭니다.
- 서비스 커넥터를 사용하여 Azure App Service에 코드 배포 및 관리 ID로 스토리지에 연결
필수 조건
- 활성 구독이 있는 Azure 계정. 체험 계정을 만듭니다.
Azure Cloud Shell에서 Bash 환경을 사용합니다. 자세한 내용은 Azure Cloud Shell의 Bash에 대한 빠른 시작을 참조하세요.
CLI 참조 명령을 로컬에서 실행하려면 Azure CLI를 설치합니다. Windows 또는 macOS에서 실행 중인 경우 Docker 컨테이너에서 Azure CLI를 실행하는 것이 좋습니다. 자세한 내용은 Docker 컨테이너에서 Azure CLI를 실행하는 방법을 참조하세요.
로컬 설치를 사용하는 경우 az login 명령을 사용하여 Azure CLI에 로그인합니다. 인증 프로세스를 완료하려면 터미널에 표시되는 단계를 수행합니다. 다른 로그인 옵션은 Azure CLI를 사용하여 로그인을 참조하세요.
메시지가 표시되면 처음 사용할 때 Azure CLI 확장을 설치합니다. 확장에 대한 자세한 내용은 Azure CLI에서 확장 사용을 참조하세요.
az version을 실행하여 설치된 버전과 종속 라이브러리를 찾습니다. 최신 버전으로 업그레이드하려면 az upgrade를 실행합니다.
초기 환경 설정
Azure CLI 버전이 2.30.0 이상인지 확인합니다.
az --version
업그레이드해야 하는 경우
az upgrade
명령을 실행합니다(버전 2.11 이상 필요).CLI를 사용하여 Azure에 로그인합니다.
az login
이 명령은 로그인 정보를 수집하는 브라우저를 엽니다. 명령이 완료되면 구독 관련 정보가 포함된 JSON 출력이 표시됩니다.
로그인하면 Azure CLI에서 Azure 명령을 실행하여 구독의 리소스를 사용할 수 있습니다.
샘플 앱 복제 또는 다운로드
샘플 리포지토리를 복제합니다.
git clone https://github.com/Azure-Samples/serviceconnector-webapp-storageblob-dotnet.git
리포지토리의 루트 폴더로 이동합니다.
cd serviceconnector-webapp-storageblob-dotnet
App Service 앱 만들기
터미널에서 앱 코드가 포함된 WebAppStorageMISample 리포지토리 폴더에 있는지 확인합니다.
아래
az webapp up
명령으로 App Service 앱(호스트 프로세스)을 만들고 자리 표시자를 사용자 고유의 데이터로 바꿉니다.--location
인수의 경우 Service Connector에서 지원하는 지역을 사용해야 합니다.<app-name>
을 전체 Azure에서 고유한 이름으로 바꿉니다. 서버 엔드포인트는https://<app-name>.azurewebsites.net
입니다.<app-name>
에 허용되는 문자는A
-Z
,0
-9
및-
입니다. 회사 이름과 앱 식별자를 조합하여 사용하는 것이 좋습니다.
az webapp up --name <app-name> --sku B1 --location eastus --resource-group ServiceConnector-tutorial-rg
스토리지 계정 및 Blob Storage 컨테이너 만들기
터미널에서 다음 명령을 사용하여 범용 v2 스토리지 계정 및 Blob Storage 컨테이너를 만듭니다.
az storage account create --name <storage-name> --resource-group ServiceConnector-tutorial-rg --sku Standard_RAGRS --https-only
<storage-name>
을 고유한 이름으로 바꿉니다. 컨테이너 이름은 소문자여야 하고, 문자 또는 숫자로 시작해야 하며, 문자, 숫자 및 대시(-) 문자만 포함할 수 있습니다.
관리 ID를 사용하여 Blob Storage 컨테이너에 App Service 앱 연결
터미널에서 관리 ID를 사용하여 웹앱을 Blob Storage에 연결하기 위해 다음 명령을 실행합니다.
az webapp connection create storage-blob -g ServiceConnector-tutorial-rg -n <app-name> --tg ServiceConnector-tutorial-rg --account <storage-name> --system-identity
다음 자리 표시자를 사용자 고유의 데이터로 바꿉니다.
<app-name>
을 3단계에서 사용한 웹앱 이름으로 바꿉니다.<storage-name>
을 4단계에서 사용한 스토리지 앱 이름으로 바꿉니다.
참고 항목
"구독이 Microsoft.ServiceLinker를 사용하도록 등록되어 있지 않음"이라는 오류 메시지가 표시되면 az provider register -n Microsoft.ServiceLinker
를 실행하여 서비스 커넥터 리소스 공급자를 등록하고 연결 명령을 다시 실행합니다.
샘플 코드 실행
터미널에서 다음 명령을 실행하여 브라우저에서 샘플 애플리케이션을 엽니다. <app-name>
을 이전에 사용한 웹앱 이름으로 바꿉니다.
az webapp browse --name <app-name>
샘플 코드는 웹 애플리케이션입니다. 인덱스 페이지를 새로 고칠 때마다 애플리케이션은 스토리지 컨테이너에 대한 Hello Service Connector! Current is {UTC Time Now}
텍스트를 포함하는 Blob을 만들거나 업데이트하고 인덱스 페이지에 표시하기 위해 다시 읽습니다.
다음 단계
서비스 커넥터에 대한 자세한 내용은 아래 가이드를 참조하세요.