Azure CLI에서 Spring Boot 애플리케이션을 배포하는 방법
참고 항목
기본, 표준 및 엔터프라이즈 계획은 2025년 3월 중순부터 사용되지 않으며 3년의 은퇴 기간이 있습니다. Azure Container Apps로 전환하는 것이 좋습니다. 자세한 내용은 Azure Spring Apps 사용 중지 공지 사항을 참조하세요.
표준 소비 및 전용 계획은 2024년 9월 30일부터 사용되지 않으며 6개월 후에 완전히 종료됩니다. Azure Container Apps로 전환하는 것이 좋습니다. 자세한 내용은 Azure Spring Apps 표준 사용량 및 전용 계획을 Azure Container Apps로 마이그레이션을 참조 하세요.
이 문서는 Java ❎ C에✅ 적용됩니다.#
이 문서는 기본/표준 ❎️ 엔터프라이즈에✅ 적용됩니다.
Azure Spring Apps는 Azure에서 Spring Boot 애플리케이션을 사용하도록 설정합니다.
Java 소스 코드 또는 미리 빌드된 JAR에서 직접 애플리케이션을 시작할 수 있습니다. 이 문서에서는 배포 절차를 설명합니다.
필수 조건
시작하기 전에 Azure 구독에 필요한 종속성이 있는지 확인합니다.
팁
Azure Cloud Shell은 이 항목의 단계를 실행하는 데 무료로 사용할 수 있는 대화형 셸입니다. 최신 버전의 Git, JDK, Maven 및 Azure CLI를 포함하는 일반적인 Azure 도구가 미리 설치되어 있습니다. Azure 구독에 로그인한 경우 shell.azure.com에서 Azure Cloud Shell을 시작합니다. Azure Cloud Shell에 대한 자세한 내용은 설명서를 참조하세요.
Azure CLI 확장 설치
다음 명령을 사용하여 Azure CLI용 Azure Spring Apps 확장을 설치합니다.
az extension add --name spring
Azure CLI를 사용하여 서비스 인스턴스 프로비저닝
Azure CLI에 로그인하고 활성 구독을 선택합니다.
az login
az account list -o table
az account set --subscription <subscription-id>
Azure Spring Apps에 서비스를 포함할 리소스 그룹을 만듭니다. Azure 리소스 그룹에 대해 자세히 알아볼 수 있습니다.
az group create --location eastus --name <resource-group-name>
다음 명령을 실행하여 Azure Spring Apps의 인스턴스를 프로비저닝합니다. Azure Spring Apps에서 서비스 이름을 준비합니다. 이름은 4~32자 사이여야 하며 소문자, 숫자 및 하이픈(-) 문자만 포함할 수 있습니다. 서비스 이름의 첫 글자는 문자여야 하며 마지막 문자는 문자 또는 숫자여야 합니다.
az spring create --resource-group <resource-group-name> --name <resource-name>
서비스 인스턴스를 배포하는 데 약 5분이 걸립니다.
다음 명령을 사용하여 기본 리소스 그룹 이름과 Azure Spring Apps 인스턴스 이름을 설정합니다.
az config set defaults.group=<service-group-name>
az config set defaults.spring=<service-instance-name>
Azure Spring Apps에서 애플리케이션 만들기
다음 명령은 구독의 Azure Spring Apps에 애플리케이션을 만듭니다. 그러면 애플리케이션을 업로드할 수 있는 빈 서비스가 만들어집니다.
az spring app create --name <app-name>
Spring Boot 애플리케이션 배포
미리 빌드한 JAR이나 Gradle 또는 Maven 리포지토리에서 애플리케이션을 배포할 수 있습니다. 아래 각 사례에 대한 지침을 찾습니다.
미리 빌드된 JAR 배포
빌드한 JAR에서 로컬 컴퓨터에 배포하려면 빌드가 fat-JAR을 생성하는지 확인합니다.
활성 배포에 fat-JAR을 배포하려면
az spring app deploy --name <app-name> --artifact-path <path-to-fat-JAR>
특정 배포에 fat-JAR을 배포하려면
az spring app deployment create --app <app-name> \
--name <deployment-name> \
--artifact-path <path-to-fat-JAR>
소스 코드에서 배포
Azure Spring Apps는 kpack을 사용하여 프로젝트를 빌드합니다. Azure CLI를 사용하여 소스 코드를 업로드하고, kpack을 사용하여 프로젝트를 빌드하고, 대상 애플리케이션에 배포할 수 있습니다.
Warning
프로젝트는 target
(Maven 배포의 경우) 또는 build/libs
(Gradle 배포의 경우)의 MANIFEST.MF
에서 main-class
항목을 포함하는 JAR 파일을 하나만 생성해야 합니다. main-class
항목을 포함하는 JAR 파일이 여러 개 있으면 배포가 실패합니다.
단일 모듈 Maven/Gradle 프로젝트의 경우:
cd <path-to-maven-or-gradle-source-root>
az spring app deploy --name <app-name> --source-path
여러 모듈이 있는 Maven/Gradle 프로젝트의 경우 각 모듈에 대해 다음 작업을 반복합니다.
cd <path-to-maven-or-gradle-source-root>
az spring app deploy --name <app-name> --source-path \
--target-module <relative-path-to-module>
배포 로그 표시
다음 명령을 사용하여 kpack 빌드 로그를 검토합니다.
az spring app show-deploy-log --name <app-name>
참고 항목
Kpack 로그는 해당 배포가 kpack을 사용하여 원본에서 빌드된 경우에만 최신 배포를 표시합니다.
애플리케이션에 퍼블릭 엔드포인트 할당
- 앱 창을 열어 서비스 인스턴스에 대한 앱을 봅니다.
- 애플리케이션을 선택하여 개요 페이지를 봅니다.
- 엔드포인트 할당을 선택하여 애플리케이션에 퍼블릭 엔드포인트를 할당합니다. 이 프로세스는 몇 분 정도 걸릴 수 있습니다.
- 개요 페이지에서 URL을 복사하고 브라우저에 붙여넣어 실행 중인 애플리케이션을 봅니다.
다음 단계
빠른 시작: 로그, 메트릭 및 추적을 사용하여 Azure Spring Apps 모니터링
GitHub: Azure Spring Apps 샘플에서 더 많은 샘플을 사용할 수 있습니다.