Exercício – Implantar o código no Serviço de Aplicativo

Concluído

Nesta unidade, você implantará o aplicativo Web no Serviço de Aplicativo.

Implantar com implantação de ZIP

Vamos implantar o aplicativo .NET com uma implantação de zip.

Primeiro, use dotnet publish para compilar os arquivos finais do aplicativo e zip para empacotá-los em um arquivo zip:

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

Por fim, execute a implantação com az webapp deployment source config-zip. Substitua <your-app-name> no comando a seguir pelo nome do aplicativo Web do Azure e execute-o:

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

A implantação vai demorar alguns minutos e a saída de status será mostrada durante esse período. Um código de status 202 significa que a implantação foi bem-sucedida.

Verificar a implantação

Vamos navegar até o aplicativo. Navegue para a guia aberta do navegador que contém a página de espaço reservado e atualize-a. Se a página de espaço reservado aparecer novamente, será a indicação de que sua instância do Serviço de Aplicativo ainda não foi totalmente reiniciada. Aguarde um momento e tente novamente. Depois que o aplicativo for reiniciado, ao atualizar, você verá a página inicial de um novo aplicativo Web ASP.NET Core.

Screenshot of welcome page.

Você hospedou com sucesso seu novo aplicativo ASP.NET Core no Serviço de Aplicativo.

Configurar credenciais de implantação

Algumas técnicas de implantação do Serviço de Aplicativo, incluindo a que usaremos aqui, exigem um nome de usuário e uma senha separados das suas credenciais do Azure. Cada aplicativo Web vem pré-configurado com seu próprio nome de usuário e uma senha que poderá ser redefinida para um novo valor aleatório, mas não poderá ser alterada para algo que você escolher.

Em vez de procurar esses valores aleatórios para cada um dos aplicativos, você pode usar um recurso do Serviço de Aplicativo chamado Credenciais de Implantação do Usuário para criar seu nome de usuário e sua senha. Os valores escolhidos funcionarão para implantações em todos os aplicativos Web do Serviço de Aplicativo nos quais você tem permissões, incluindo os próximos aplicativos Web que serão criados. O nome de usuário e a senha escolhidos estão vinculados às suas credenciais do Azure e devem ser usados somente por você. Não os compartilhe com outras pessoas. Você poderá alterar o nome de usuário e a senha a qualquer momento.

A maneira mais fácil para criar as credenciais de implantação é na CLI do Azure.

  1. Execute o comando a seguir no Cloud Shell para definir as credenciais de implantação, substituindo <username> e <password> pelos valores que você escolher:

    az webapp deployment user set --user-name <username> --password <password>
    

Implantar o pacote de aplicativos Java com a implantação WAR

Vamos implantar nosso aplicativo Java com implantação de WAR. A implantação do WAR faz parte da API REST do Kudu, uma interface de serviço administrativo disponível em todos os aplicativos Web do serviço de aplicativo, que você pode acessar por HTTP. A maneira mais simples de usar a implantação de WAR é com o utilitário curl HTTP na linha de comando.

Execute os comandos a seguir para implantar o aplicativo Web Java com a implantação WAR. Substitua <username> e <password> pelo nome do Usuário da Implantação e a senha que você criou anteriormente e substitua <your-app-name> pelo nome do aplicativo Web que você criou no portal do Azure.

cd ~/helloworld/target
curl -v -X POST -u <username>:<password> https://<your-app-name>.scm.azurewebsites.net/api/wardeploy --data-binary @helloworld.war

Quando o comando concluir a execução, abra uma nova guia do navegador e vá até https://<your-app-name>.azurewebsites.net. Você receberá uma mensagem de boas-vindas do aplicativo. Você implantou com êxito!

Implantar com o az webapp up

Vamos implantar nosso aplicativo Node.js com az webapp up. Esse comando empacotará nosso aplicativo e o enviará para a instância do Serviço de Aplicativo, em que ele será compilado e implantado.

Primeiro, precisamos reunir algumas informações sobre nosso recurso de Aplicativo Web. Execute os comandos a seguir para definir as variáveis do shell que contêm o nome do aplicativo, o nome do grupo de recursos, o nome do plano, o SKU e o local. Cada um deles usa um comando az diferente para solicitar as informações do Azure. O comando az webapp up precisa desses valores para ser direcionado ao aplicativo Web existente.

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)

Agora, execute az webapp up com os valores apropriados. Verifique se você está no diretório helloworld antes de executar esse comando.

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

A implantação levará alguns minutos para ser propagada. Você poderá ver o progresso na saída de status. O código de status 202 significa que a implantação foi bem-sucedida.

Verificar a implantação

Vamos navegar até o aplicativo. A última linha da saída de az webapp up anterior ao bloco de código JSON apresenta um link para o aplicativo. Selecione-a para navegar até ela em uma nova guia do navegador. A página demorará um pouco para carregar, pois o serviço de aplicativo está inicializando seu aplicativo pela primeira vez.

Após o carregamento, você receberá uma mensagem de boas-vindas do aplicativo. Você implantou com êxito!

Screenshot of welcome page.

Implantar com o az webapp up

Vamos implantar nosso aplicativo Python com az webapp up. Esse comando empacotará nosso aplicativo e o enviará para a instância do Serviço de Aplicativo, em que ele será compilado e implantado.

Primeiro, precisamos reunir algumas informações sobre nosso recurso de Aplicativo Web. Execute estes comandos para definir as variáveis do shell que contêm o nome do aplicativo, o nome do grupo de recursos, o nome do plano, o SKU e o local. Eles usam comandos az diferentes para solicitar as informações do Azure; o az webapp up precisa desses valores para usar nosso aplicativo Web existente como destino.

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)

Agora, execute az webapp up com os valores apropriados. Verifique se você está no diretório BestBikeApp antes de executar esse comando.

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

A implantação vai demorar alguns minutos e a saída de status será mostrada durante esse período.

Verificar a implantação

Vamos navegar até o aplicativo. Na saída, logo antes do bloco de código JSON, existe uma linha com uma URL. Selecione esse link para abrir o aplicativo em uma nova guia do navegador. A página pode demorar um pouco para ser carregada porque o Serviço de Aplicativo está inicializando o aplicativo pela primeira vez.

Depois que o programa for carregado, você receberá uma mensagem de boas-vindas do aplicativo. Você implantou com êxito!

Screenshot of Python's welcome page showing Hello Best Bike App!