Exercício – Criar um site do Azure usando a CLI
Avançar, vamos utilizar a CLI do Azure para criar um grupo de recursos e, em seguida, implantar um aplicativo Web nesse grupo de recursos.
A área restrita gratuita permite criar recursos em um subconjunto das regiões globais do Azure. Selecione uma região desta lista quando você criar recursos:
- westus2
- southcentralus
- centralus
- eastus
- westeurope
- southeastasia
- japaneast
- brazilsouth
- australiasoutheast
- centralindia
Usar um grupo de recursos
Quando estiver trabalhando com seu computador e sua assinatura do Azure, você precisará entrar no Azure usando o comando az login
. No entanto, não é preciso fazer logon ao usar o ambiente de área restrita do Cloud Shell baseado em navegador.
Em seguida, normalmente você criaria um grupo de recursos para todos os recursos do Azure relacionados com um comando az group create
, mas para este exercício, o grupo de recursos a seguir já foi criado para você:
Observação
Para este exercício, estamos usando o Leste dos EUA como a região. Se encontrar um problema ao criar o Plano do Serviço de Aplicativo, selecione uma região diferente na lista anterior.
Sua primeira etapa neste exercício é criar diversas variáveis para utilizar em comandos posteriores:
export RESOURCE_GROUP=<rgn>[sandbox resource group name]</rgn> export AZURE_REGION=eastus export AZURE_APP_PLAN=popupappplan-$RANDOM export AZURE_WEB_APP=popupwebapp-$RANDOM
Você pode solicitar à CLI do Azure que liste todos os grupos de recursos em uma tabela. Deve existir apenas um enquanto você estiver na Área Restrita gratuita do Azure:
az group list --output table
Dica
Use o botão Copiar para copiar os comandos para a área de transferência. Para colar o conteúdo, clique com o botão direito do mouse em uma nova linha no terminal do Cloud Shell e selecione Colar ou use o atalho de teclado Shift + Insert (⌘ + V no macOS).
Quando mais você avançar no desenvolvimentos para o Azure, poderá acabar tendo vários grupos de recursos. Se você tiver vários itens na lista de grupos, filtre os valores retornados adicionando uma opção
--query
. Experimente o comando a seguir:az group list --query "[?name == '$RESOURCE_GROUP']"
A consulta é formatada usando JMESPath, que é uma linguagem de consulta padrão para solicitações JSON. Saiba mais sobre essa linguagem de filtro avançada em http://jmespath.org/. Consultas também são abordadas com mais profundidade no módulo Gerenciar VMs com a CLI do Azure.
Etapas para criar um plano de serviço
Quando você executa Aplicativos Web usando o Serviço de Aplicativo do Azure, você paga pelos recursos de computação do Azure que o aplicativo utiliza, e os custos dos recursos dependem do plano do Serviço de Aplicativo associado aos seus aplicativos Web. Planos de serviço determinam a região usada para o datacenter do aplicativo, o número de VMs usadas e o tipo de preço.
Crie um Plano do Serviço de Aplicativo para executar seu aplicativo. O comando a seguir especifica o tipo de preço gratuito, mas você pode executar
az appservice plan create --help
para ver os outros tipos de preço.Observação
Os nomes do aplicativo e do plano devem ser únicos em todo o Azure. Às variáveis que você criou anteriormente serão atribuídos valores aleatórios como sufixo para garantir que elas sejam exclusivas. No entanto, se ocorrer um erro durante a criação de recursos, execute os comandos listados anteriormente para redefinir todas as variáveis com novos valores aleatórios.
Se você receber um erro sobre o grupo de recursos, execute os comandos listados anteriormente com um valor de grupo de recursos diferente.
az appservice plan create --name $AZURE_APP_PLAN --resource-group $RESOURCE_GROUP --location $AZURE_REGION --sku FREE
Esse comando pode levar vários minutos para ser concluído.
Verifique se o plano de serviço foi criado com êxito, listando todos os seus planos em uma tabela:
az appservice plan list --output table
Você deve receber uma resposta como a do exemplo a seguir:
Kind Location MaximumNumberOfWorkers Name NumberOfSites ResourceGroup Status ------ ---------- ------------------------ ------------------ --------------- ------------------------------------------ -------- app East US 3 popupappplan-54321 0 Learn-12345678-1234-1234-1234-123456789abc Ready
Criar um aplicativo Web
Em seguida, crie o aplicativo Web no plano de serviço. Você pode implantar o código simultaneamente, mas em nosso exemplo, criaremos o aplicativo Web e implantaremos o código em etapas separadas.
Para criar o aplicativo Web, forneça o nome do aplicativo Web e o nome do plano de aplicativo criado anteriormente. Assim como o nome do plano de aplicativo, o nome do aplicativo Web deve ser exclusivo. As variáveis criadas anteriormente atribuem valores aleatórios que devem ser suficientes para este exercício. Esse comando pode levar alguns minutos para ser concluído.
az webapp create --name $AZURE_WEB_APP --resource-group $RESOURCE_GROUP --plan $AZURE_APP_PLAN
Verifique se o aplicativo foi criado com êxito, listando todos os seus aplicativos em uma tabela:
az webapp list --output table
Você deve receber uma resposta como a do exemplo a seguir:
Name Location State ResourceGroup DefaultHostName AppServicePlan ----------------- ---------- ------- ------------------------------------------ ----------------------------------- ------------------ popupwebapp-12345 East US Running Learn-12345678-1234-1234-1234-123456789abc popupwebapp-12345.azurewebsites.net popupappplan-54321
Anote o DefaultHostName listado na tabela; esse é o endereço da URL para o novo site. O Azure disponibiliza seu site por meio do nome exclusivo do aplicativo no domínio
azurewebsites.net
. Por exemplo, se o nome do aplicativo for "popupwebapp-12345", a URL do site será:http://popupwebapp-12345.azurewebsites.net
. Você também pode utilizar o seguinte script para retornar o endereço HTTP:site="http://$AZURE_WEB_APP.azurewebsites.net" echo $site
Para obter o HTML padrão para o aplicativo de exemplo, use CURL com o DefaultHostName:
curl $AZURE_WEB_APP.azurewebsites.net
Você deve receber uma resposta como a do exemplo a seguir:
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1.0"/><meta http-equiv="X-UA-Compatible" content="IE=edge"/><title>Microsoft Azure App Service - Welcome</title><link rel="shortcut icon" href="https://appservice.azureedge.net/images/app-service/v4/favicon.ico" type="image/x-icon"/><link href="https://appservice.azureedge.net/css/app-service/v4/bootstrap.min.css" rel="stylesheet" crossorigin="anonymous"/><style>html, body{height: 100%; background-color: #ffffff; color: #000000; font-size: 13px;}*{border-radius: 0 !important;}</style> ... (continued)
Implantar um código por meio do GitHub
A etapa final é implantar o código por meio de um repositório GitHub no aplicativo Web. Vamos usar uma página PHP básica disponível no repositório GitHub de Amostras do Azure que exibe "Olá, Mundo!" quando executada. Lembre-se de usar o nome do aplicativo Web que você criou. Esse comando pode levar alguns minutos para ser concluído.
az webapp deployment source config --name $AZURE_WEB_APP --resource-group $RESOURCE_GROUP --repo-url "https://github.com/Azure-Samples/php-docs-hello-world" --branch master --manual-integration
Depois de implantado, acesse seu site novamente com um navegador ou CURL:
curl $AZURE_WEB_APP.azurewebsites.net
A página exibirá "Olá, Mundo!"
Hello World!
Este exercício demonstrou um padrão típico para uma sessão interativa da CLI do Azure. Primeiro, você usou um comando padrão para criar um novo grupo de recursos. Em seguida, você usou um conjunto de comandos para implantar um recurso (neste exemplo, um aplicativo Web) para esse grupo de recursos. Você pode combinar facilmente esse conjunto de comandos em um script de shell e executá-lo sempre que precisar criar o mesmo recurso.