연습 - App Service에 코드 배포

완료됨

이 단원에서는 웹 애플리케이션을 App Service에 배포합니다.

az webapp deploy을 사용하여 배포

ZIP 배포를 사용하여 .NET 애플리케이션을 배포해 보겠습니다.

먼저 dotnet publish를 사용하여 최종 앱 파일을 빌드하고 zip을 사용하여 이를 zip 파일로 패키징합니다.

cd ~/BestBikeApp
dotnet publish -o pub
cd pub
zip -r site.zip *

마지막으로, az webapp deploy을 사용하여 배포를 수행합니다. 다음 명령에서 <your-app-name>을 Azure 웹앱의 이름으로 바꾸고 실행합니다.

az webapp deploy \
    --src-path site.zip \
    --resource-group <rgn>[sandbox resource group name]</rgn> \
    --name <your-app-name>

배포에는 몇 분 정도 소요되며, 이 시간 동안 상태 출력이 표시됩니다. 상태 코드 202는 배포가 성공적으로 완료되었음을 의미합니다.

배포 확인

애플리케이션으로 이동하겠습니다. 자리 표시자 페이지를 포함하여 열려 있는 브라우저 탭으로 돌아가서 새로 고칩니다. 자리 표시자 페이지가 다시 나타난다면 App Service 인스턴스가 아직 완전히 다시 시작되지 않은 것이므로 잠시 기다린 후에 다시 시도합니다. 앱을 다시 시작한 후 새로 고치면 새 ASP.NET Core 웹앱에 대한 시작 페이지가 표시됩니다.

시작 페이지의 스크린샷

축하합니다! App Service에서 새 ASP.NET Core 애플리케이션을 성공적으로 호스트했습니다.

az webapp deploy을 사용하여 배포

다음 명령을 실행하여 Java 웹앱을 배포합니다. <your-app-name>을 Azure Portal에서 만든 웹앱의 이름으로 바꿉니다.

cd ~/helloworld/target
az webapp deploy \
    --src-path helloworld.war \
    --resource-group <rgn>[sandbox resource group name]</rgn> \
    --name <your-app-name>

명령 실행이 완료되면 새 브라우저 탭을 열고 https://<your-app-name>.azurewebsites.net으로 이동합니다. 앱에서 인사말 메시지를 가져옵니다. 성공적으로 배포되었습니다!

az webapp up을 사용하여 배포

az webapp up을 사용하여 Node.js 애플리케이션을 배포해 보겠습니다. 이 명령은 애플리케이션을 패키지화하여 앱이 빌드되고 배포되는 App Service 인스턴스로 보냅니다.

먼저 웹앱 리소스에 대한 몇 가지 정보를 수집해야 합니다. 다음 명령을 실행하여 앱 이름, 리소스 그룹 이름, 계획 이름, SKU, 런타임 및 위치가 포함된 셸 변수를 설정합니다. 이러한 각 변수는 서로 다른 az 명령을 사용하여 Azure에서 정보를 요청합니다. az webapp up은 기존 웹앱의 목표를 지정하려면 이러한 값이 필요합니다.

export APPNAME=$(az webapp list --query [0].name --output tsv)
export APPRG=$(az webapp list --query [0].resourceGroup --output tsv)
export APPPLAN=$(az appservice plan list --query [0].name --output tsv)
export APPSKU=$(az appservice plan list --query [0].sku.name --output tsv)
export APPRUNTIME="node|20-LTS"
export APPLOCATION=$(az appservice plan list --query [0].location --output tsv)

이제 az webapp up을 적절한 값으로 실행합니다. 이 명령을 실행하기 전에 helloworld 디렉터리에 있는지 확인합니다.

az webapp up --name $APPNAME --resource-group $APPRG --plan $APPPLAN --sku $APPSKU --runtime $APPRUNTIME --location "$APPLOCATION"

배포가 전파되는 데 몇 분 정도 걸립니다. 상태 출력에서 진행률을 볼 수 있습니다. 상태 코드 202는 배포가 성공적으로 완료되었음을 의미합니다.

배포 확인

애플리케이션으로 이동하겠습니다. JSON 코드 블록 앞에 az webapp up의 출력 마지막 줄에 앱에 대한 링크가 있습니다. 새 브라우저 탭에서 탐색하려면 선택합니다. App Service가 처음으로 앱을 초기화하므로 페이지를 로드하는 데 약간의 시간이 걸립니다.

로드되면 앱에서 인사말 메시지를 가져오게 됩니다. 성공적으로 배포되었습니다!

az webapp up을 사용하여 배포

az webapp up을 사용하여 Python 애플리케이션을 배포해 보겠습니다. 이 명령은 애플리케이션을 패키지화하여 앱이 빌드되고 배포되는 App Service 인스턴스로 보냅니다.

먼저 웹앱 리소스에 대한 몇 가지 정보를 수집해야 합니다. 이러한 명령을 실행하여 앱의 이름, 리소스 그룹 이름, 플랜 이름, SKU 및 위치를 포함하는 셸 변수를 설정합니다. Azure에서 정보를 요청하는 데 다른 az 명령을 사용합니다. az webapp up은 기존 웹앱을 대상으로 하는 이러한 값이 필요합니다.

export APPNAME=$(az webapp list --query [0].name --output tsv)
export APPRG=$(az webapp list --query [0].resourceGroup --output tsv)
export APPPLAN=$(az appservice plan list --query [0].name --output tsv)
export APPSKU=$(az appservice plan list --query [0].sku.name --output tsv)
export APPLOCATION=$(az appservice plan list --query [0].location --output tsv)

이제 az webapp up을 적절한 값으로 실행합니다. 이 명령을 실행하기 전에 BestBikeApp 디렉터리에 있는지 확인합니다.

cd ~/BestBikeApp
az webapp up --name $APPNAME --resource-group $APPRG --plan $APPPLAN --sku $APPSKU --location "$APPLOCATION"

배포에는 몇 분 정도 소요되며, 이 시간 동안 상태 출력이 표시됩니다.

배포 확인

애플리케이션으로 이동하겠습니다. 출력에서 JSON 코드 블록 바로 앞에 URL이 있는 줄이 있습니다. 새 브라우저 탭에서 앱을 열려면 해당 링크를 선택합니다. App Service가 처음으로 앱을 초기화하기 때문에 페이지를 로드하는 데 약간의 시간이 걸릴 수 있습니다.

프로그램이 로드되면 앱에서 환영 메시지가 표시됩니다. 성공적으로 배포되었습니다!

Hello Best Bike 앱을 보여주는 Python 홈페이지 스크린샷