Exercício – Executar Instâncias de Contêiner do Azure

Concluído

Crie um contêiner no Azure e coloque-o na Internet com um FQDN (nome de domínio totalmente qualificado).

Importante

É preciso ter uma assinatura do Azure para fazer esse exercício, e isso pode gerar encargos. Caso ainda não tenha uma assinatura do Azure, crie uma conta gratuita antes de começar.

Por que usar o serviço Instâncias de Contêiner do Azure?

O serviço Instâncias de Contêiner do Azure é útil para cenários que podem ser realizados em contêineres isolados, incluindo aplicativos simples, automação de tarefas e trabalhos de build. Estes são alguns dos benefícios:

  • Início rápido: iniciar contêineres em segundos.
  • Cobrança por segundo: gerar custos somente enquanto o contêiner estiver sendo executado.
  • Segurança em nível de hipervisor: isolar seu aplicativo completamente como se ele estivesse em uma VM.
  • Tamanhos personalizados: especificar valores exatos de núcleos de CPU e de memória.
  • Armazenamento persistente: montar compartilhamentos de arquivos do Azure diretamente em um contêiner para recuperar e manter o estado.
  • Linux e Windows: agendar contêineres do Windows e do Linux usando a mesma API.

Para cenários em que você precisa da orquestração completa de contêineres, incluindo descoberta do serviço em vários contêineres, dimensionamento automático e atualizações coordenadas de aplicativo, recomendamos o AKS (Serviço de Kubernetes do Azure).

Criar um contêiner

  1. Entre no portal do Azure com a sua assinatura do Azure.

  2. Abra o Azure Cloud Shell no portal do Azure selecionando o ícone do Cloud Shell. Lembre-se de selecionar Bash como o ambiente interativo do Cloud Shell.

  3. Crie um grupo de recursos com o nome learn-deploy-aci-rg para facilitar a limpeza desses recursos ao concluir o módulo. Se você escolher um nome diferente para o grupo de recursos, lembre-se dele para o restante dos exercícios deste módulo. Você também precisa escolher a região em que deseja criar o grupo de recursos; por exemplo, Leste dos EUA.

    az group create --name learn-deploy-aci-rg --location eastus
    

    Crie um contêiner fornecendo um nome, uma imagem do Docker e um grupo de recursos do Azure para o comando az container create. Opcionalmente, você pode expor o contêiner à Internet especificando um rótulo de nome DNS. Neste exemplo, implante um contêiner que hospeda um pequeno aplicativo Web. Você também pode selecionar a localização em que deseja colocar a imagem. Usamos a região Leste dos EUA, mas você pode alterá-la para uma localização perto de você.

  4. Forneça um nome DNS para colocar o contêiner na Internet. Esse nome DNS precisa ser exclusivo. Para fins de aprendizado, execute este comando no Cloud Shell para criar uma variável de Bash que contenha um nome exclusivo:

    DNS_NAME_LABEL=aci-demo-$RANDOM
    
  5. Execute o comando az container create a seguir para iniciar uma instância de contêiner:

    az container create \
      --resource-group learn-deploy-aci-rg \
      --name mycontainer \
      --image mcr.microsoft.com/azuredocs/aci-helloworld \
      --ports 80 \
      --dns-name-label $DNS_NAME_LABEL \
      --location eastus
    

    $DNS_NAME_LABEL especifica seu nome DNS. O nome da imagem, azuredocs/aci-helloworld, refere-se a uma imagem de contêiner hospedada no Microsoft Container Registry que executa um aplicativo Web Node.js básico.

  6. Quando o comando az container create for concluído, execute az container show para verificar o status dele:

    az container show \
      --resource-group learn-deploy-aci-rg \
      --name mycontainer \
      --query "{FQDN:ipAddress.fqdn,ProvisioningState:provisioningState}" \
      --output table
    

    Você obterá o FQDN (nome de domínio totalmente qualificado) do contêiner e o estado de provisionamento dele. Aqui está um exemplo:

    FQDN                                    ProvisioningState
    --------------------------------------  -------------------
    aci-demo-0000.eastus.azurecontainer.io  Succeeded
    

    Se o contêiner estiver com o estado Criando, aguarde alguns minutos e execute o comando novamente até ver o estado Com sucesso.

  7. Em um navegador, acesse o FQDN do contêiner para vê-lo em execução. Insira o prefixo http:// na frente da cadeia de caracteres aci-demo…. Você deverá ver esta página inicial:

    Captura de tela do aplicativo de contêiner de exemplo do Node.js em execução em um navegador.

Resumo

Aqui, você criou uma instância de contêiner do Azure para executar um servidor e um aplicativo Web. Você também acessou esse aplicativo usando o FQDN da instância de contêiner.