연습 - Azure App Service에 웹앱 배포
앞 단원에서는 Java 개발자가 Azure App Service용 Maven 플러그인을 사용하면 웹앱을 빌드하여 Azure에 빌드하는 프로세스가 간편하게 자동화된다는 사실을 알아보았습니다. 웹앱을 만들고 로컬로 테스트했으면 이제 Azure App Service에 배포할 차례입니다.
이 연습에서는 프로젝트에 azure-webapp-maven-plugin
플러그인을 추가하고 앱을 Azure App Service에 배포하기 위한 필수 설정을 구성합니다. 웹앱을 Azure에 성공적으로 배포한 후에는 Azure App Service에서 실행되는 웹앱을 테스트합니다.
프로젝트에 azure-webapp-maven-plugin
플러그인 추가
azure-webapp-maven-plugin
을 사용하여 Mavenpom.xml
파일에 대화형으로 플러그 인 및 구성 설정을 추가합니다.cd ~/MyWebApp mvn com.microsoft.azure:azure-webapp-maven-plugin:2.13.0:config
각 대화형 프롬프트에 다음 값을 입력합니다.
프롬프트 값 새 실행 구성 만들기 Y 입력 Define value for OS(OS 값 정의) Linux에 해당하는 숫자 입력 Define value for javaVersion(javaVersion 값 정의) Java 17에 해당하는 숫자 입력 webContainer의 값 정의 TOMCAT 10.0에 해당하는 숫자 입력 Define value for pricingTier(pricingTier 값 정의) S1에 해당하는 숫자 입력 확인(Y/N) Y 입력 플러그인이 사용자의 선택 사항을 반영하는 적절한 설정을
pom.xml
파일에 추가합니다.code
를 사용하여pom.xml
파일을 확인하고 편집할 수 있습니다.code pom.xml
pom.xml
파일의<build>
섹션은 다음 예제와 비슷할 것입니다.<finalName>MyWebApp</finalName> <pluginManagement> ... </pluginManagement> <plugins> <plugin> <groupId>com.microsoft.azure</groupId> <artifactId>azure-webapp-maven-plugin</artifactId> <version>2.13.0</version> <configuration> <schemaVersion>v2</schemaVersion> ...
Ctrl+S를 입력하여 변경 내용을 저장합니다.
Ctrl+Q를 입력하여 코드 편집기를 종료합니다.
샌드박스 리소스 그룹을 사용하도록 플러그 인 구성
이 연습에서는 샌드박스의 리소스 그룹 이름과 위치를 확인해야 합니다. 이렇게 하려면 다음 명령을 사용합니다.
az group list --query [0].name az group list --query [0].location
이 연습의 뒷부분에서 사용할 수 있도록 값을 복사해 두세요.
azure-webapp-maven-plugin
을 다시 사용하여 대화형으로 Mavenpom.xml
파일에 더 많은 설정을 구성합니다.mvn com.microsoft.azure:azure-webapp-maven-plugin:2.13.0:config
각 대화형 프롬프트에 다음 값을 입력합니다.
프롬프트 값 Please choose which part to config(구성할 부분 선택) 애플리케이션을 구성하는 데 필요한 숫자 입력 Define value for appName(appName 값 정의) 기본값을 그대로 적용 Define value for resourceGroup(resourceGroup 값 정의) 앞에서 복사한 리소스 그룹의 이름 입력( [샌드박스 리소스 그룹 이름] )Define value for region(지역 값 정의) 앞에서 복사한 리소스 그룹의 위치 입력 Define value for pricingTier(pricingTier 값 정의) f1 계층에 해당하는 숫자 입력 확인(Y/N) Y 입력 플러그인이
pom.xml
파일에서 설정을 업데이트합니다.
웹앱 배포 및 테스트
Maven을 사용하여 웹앱을 빌드하고 Azure App Service에 배포합니다.
mvn package azure-webapp:deploy
각 대화형 프롬프트에 다음 값을 입력합니다.
프롬프트 값 구독 선택 구독에 해당하는 번호 입력 Maven에 일련의 빌드 메시지가 표시됩니다. 마지막 메시지는 Azure에 성공적으로 배포되었음을 나타냅니다.
[INFO] Successfully deployed the resources to MyWebApp-1570214065588 [INFO] Trying to deploy artifact to MyWebApp-1570214065588... [INFO] Deploying (/home/cephas/MyWebApp/target/MyWebApp.war)[war] ... [INFO] Application url: https://MyWebApp-1570214065588.azurewebsites.net [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 31.001 s [INFO] Finished at: 2024-05-02T12:08:40Z [INFO] ------------------------------------------------------------------------
셸에서 URL을 선택하여 배포된 앱에 액세스합니다. 기본적으로 Maven 플러그인은 기본(루트) 컨텍스트에 Tomcat 애플리케이션을 배포합니다.
다음 연습에서는 웹앱을 업데이트하여 Azure App Service에 재배포합니다.