이 문서에서는 GitHub 리포지토리를 사용하여 Spring PetClinic 샘플 애플리케이션을 Azure Container Apps에 배포하는 방법을 보여줍니다.
다음 옵션을 포함하여 Java 애플리케이션을 배포하는 데 사용할 수 있는 몇 가지 옵션이 있습니다.
- 로컬 파일 시스템 또는 코드 리포지토리에서 배포합니다.
- Maven 또는 IDE를 사용하여 배포합니다.
- WAR 파일, JAR 파일을 사용하거나 소스 코드에서 직접 배포합니다.
이 자습서를 마치면 Azure Portal을 통해 관리할 수 있는 웹 애플리케이션을 배포합니다. 다음 스크린샷은 Azure Container Apps에 배포된 PetClinic 애플리케이션의 홈페이지를 보여줍니다.
필수 조건
- Azure 구독. 체험 계정 만들기
-
Contributor또는Owner권한이 Azure 구독에 있습니다. 자세한 내용은 Azure Portal을 사용하여 Azure 역할 할당을 참조하십시오. - GitHub 계정.
- Git
- Azure CLI
- Azure Container Apps CLI 확장, 버전 0.3.47 이상. 다음 명령을 사용하여 최신 버전을 설치합니다.
az extension add --name containerapp --upgrade --allow-preview - Java 개발 키트, 버전 17 이상.
- Apache Maven
프로젝트 준비
Azure Container Apps Java 샘플 리포지토리 페이지의 포크 단추를 사용하여 리포지토리를 개인 GitHub 계정으로 포크합니다. 포크가 완료되면 다음 섹션에서 사용할 포크의 URL을 복사합니다.
프로젝트 배포
다음 단계를 사용하여 프로젝트를 배포합니다.
다음 명령을 사용하여 필요한 환경 변수를 설정합니다.
export RESOURCE_GROUP="pet-clinic-container-apps" export LOCATION="canadacentral" export ENVIRONMENT="env-pet-clinic-container-apps" export CONTAINER_APP_NAME="pet-clinic" export REPO_URL="<URL-of-your-GitHub-repo-fork>"아직 로그인하지 않은 경우 CLI에서 Azure에 로그인합니다. 자세한 내용은 빠른 시작의 설치 섹션을 참조하세요 . 로컬 소스 코드에서 Azure Container Apps로 빌드 및 배포합니다.
다음 명령을 사용하여 Spring Boot 앱을 빌드하고 배포합니다.
az containerapp up \ --resource-group $RESOURCE_GROUP \ --name $CONTAINER_APP_NAME \ --location $LOCATION \ --environment $ENVIRONMENT \ --context-path ./spring-petclinic \ --repo $REPO_URL이 명령은 다음 작업을 수행합니다.
- 리소스 그룹을 만듭니다.
- Azure 컨테이너 레지스트리를 만듭니다.
- 컨테이너 이미지를 빌드하고 레지스트리에 푸시합니다.
- Log Analytics 작업 영역을 사용하여 Container Apps 환경을 만듭니다.
- 빌드된 컨테이너 이미지를 사용하여 컨테이너 앱을 만들고 배포합니다.
이제 프로젝트가 배포되었습니다. 리포지토리에 새 코드를 푸시하는 경우 GitHub 작업은 다음 작업을 수행합니다.
- 컨테이너 이미지를 빌드하고 Azure 컨테이너 레지스트리에 푸시합니다.
- 컨테이너 이미지를 만든 컨테이너 앱에 배포합니다.
앱 상태 확인
배포가 완료되면 컨테이너 앱의 Azure Portal 개요 페이지로 이동하고 애플리케이션 URL 을 선택하여 클라우드에서 실행 중인 애플리케이션을 확인합니다.
자원을 정리하세요
더 빠른 시작 및 자습서를 계속 사용하려는 경우 이러한 리소스를 그대로 두는 것이 좋습니다. 리소스가 더 이상 필요하지 않은 경우 다음 명령을 사용하여 Azure 요금을 방지하기 위해 리소스를 제거할 수 있습니다.
az group delete --name $RESOURCE_GROUP