Exercício – Implementar o código no Serviço de Aplicações

Concluído

Nesta unidade, irá implementar a sua aplicação Web no Serviço de Aplicações.

Implementar com a implementação ZIP

Vamos implantar o aplicativo .NET com implantação ZIP.

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

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

Por fim, execute a implementação com az webapp deployment source config-zip. Substitua <your-app-name> no comando a seguir pelo nome do seu 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 levará alguns minutos, durante os quais você obterá a saída de status. Um código de status 202 significa que a implantação foi bem-sucedida.

Verificar a implementação

Vamos navegar até a nossa aplicação. Regresse ao separador do browser aberto com a página de marcador de posição e atualize-a. Se a página de marcador de posição voltar a ser apresentada, a instância do Serviço de Aplicações ainda não foi totalmente reiniciada, pelo que aguarde uns minutos e tente novamente. Ao atualizar após a reinicialização do aplicativo, você receberá 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 as credenciais de implementação

Algumas técnicas de implantação do Serviço de Aplicativo, incluindo a que usaremos aqui, exigem um nome de usuário e senha separados de suas credenciais do Azure. Cada aplicação Web vem pré-configurada com o seu próprio nome de utilizador e uma palavra-passe que pode ser reposta para um novo valor aleatório, mas que não pode ser alterada para um valor à sua escolha.

Em vez de procurar esses valores aleatórios para cada um dos seus aplicativos, você pode usar um recurso do Serviço de Aplicativo chamado Credenciais de Implantação de Usuário para criar seu próprio nome de usuário e senha. Os valores escolhidos funcionarão para implantações em todos os aplicativos Web do Serviço de Aplicativo para os quais você tem permissões, incluindo novos aplicativos Web criados no futuro. O nome de usuário e a senha selecionados estão vinculados às suas credenciais do Azure e destinam-se apenas ao seu uso, portanto, não os compartilhe com outras pessoas. Pode alterar o nome de utilizador e a palavra-passe a qualquer altura.

A forma mais fácil de criar credenciais de implementação é a partir da CLI do Azure.

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

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

Implemente o pacote de aplicativos Java com o WAR deploy

Vamos implementar a nossa aplicação Java com a implementação 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 forma mais fácil de utilizar a implementação WAR é com o utilitário HTTP curl da linha de comandos.

Execute os seguintes comandos para implementar seu aplicativo Web Java com o WAR deploy. Substitua <username> e pelo nome de usuário e senha do Usuário de Implantação criado anteriormente e <password> substitua <your-app-name> pelo nome do aplicativo Web criado 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 terminar de ser executado, abra uma nova guia do navegador e vá para https://<your-app-name>.azurewebsites.net. Você receberá a mensagem de saudação do seu aplicativo. Você implantou com sucesso!

Implementar com o az webapp up

Vamos implementar a nossa aplicação Node.js com o az webapp up. Este comando empacota nosso aplicativo e o envia para nossa instância do Serviço de Aplicativo, onde ele é criado e implantado.

Em primeiro lugar, precisamos de reunir algumas informações sobre o nosso recurso de aplicação Web. Execute os comandos a seguir para definir variáveis de shell que contenham o nome do aplicativo, o nome do grupo de recursos, o nome do plano, a sku e o local. Cada um deles usa um comando diferente az para solicitar as informações do Azure, az webapp up precisa desses valores para direcionar nosso 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 o az webapp up com os valores adequados. Certifique-se de que está no helloworld diretório antes de executar este comando.

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

A implantação levará alguns minutos para se propagar. Você poderá visualizar o progresso na saída de status. Um código de status 202 significa que sua implantação foi bem-sucedida.

Verificar a implementação

Vamos navegar até a nossa aplicação. A última linha de saída de antes do bloco de az webapp up código JSON tem um link para seu aplicativo. Selecione-o para navegar lá em uma nova guia do navegador. A página levará um momento para carregar, pois o Serviço de Aplicativo está inicializando seu aplicativo pela primeira vez.

Assim que carregar, você receberá a mensagem de saudação do seu aplicativo. Você implantou com sucesso!

Screenshot of welcome page.

Implementar com o az webapp up

Vamos implementar a nossa aplicação Python com o az webapp up. Este comando empacota nosso aplicativo e o envia para nossa instância do Serviço de Aplicativo, onde ele é criado e implantado.

Em primeiro lugar, precisamos de reunir algumas informações sobre o nosso recurso de aplicação Web. Execute estes comandos para definir as variáveis do shell que contêm o nome da aplicação, o nome do grupo de recursos, o nome do plano, o SKU e a localização. Estes utilizam comandos az diferentes para pedir as informações ao Azure. O az webapp up precisa destes valores para marcar a nossa aplicação 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 o az webapp up com os valores adequados. Certifique-se de que está no BestBikeApp diretório antes de executar este comando.

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

A implantação levará alguns minutos, durante os quais você obterá a saída de status.

Verificar a implementação

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

Assim que o programa carregar, você receberá a mensagem de saudação do seu aplicativo. Você implantou com sucesso!

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