Exercício – criar uma VM para alojar a sua aplicação Web

Concluído

Como a maioria das arquiteturas de aplicações, pode executar a aplicação da pilha MEAN em vários ambientes diferentes. Pode executar a sua aplicação num computador físico no seu espaço de servidor, numa máquina virtual ou em contentores.

Aqui vai executar a aplicação numa VM em execução no Azure. A MEAN suporta muitos sistemas operativos diferentes. Para fins de aprendizagem, você usará o Ubuntu Linux aqui.

Criar uma VM do Ubuntu Linux

Normalmente, cria um grupo de recursos antes de criar outros recursos no Azure. Um grupo de recursos é um contentor que retém os recursos relacionados de uma solução do Azure. Para este exercício, o sandbox do Azure fornece-lhe um grupo de recursos. No entanto, ao trabalhar em sua própria assinatura do Azure, você executaria o seguinte comando para criar um grupo de recursos em um local perto de você.

Nota

O exemplo de código a seguir az group create é para você executar com sua própria conta, não com esta sandbox!

az group create \
  --name <resource-group-name> \
  --location <resource-group-location>
  1. No Cloud Shell, execute o az vm create comando para criar uma VM do Ubuntu:

    az vm create \
      --resource-group "<rgn>[sandbox resource group name]</rgn>" \
      --name MeanStack \
      --image Canonical:0001-com-ubuntu-server-focal:20_04-lts:latest \
      --admin-username azureuser \
      --generate-ssh-keys
    

    A conclusão do comando demora cerca de dois minutos. Quando o comando terminar, você verá uma saída semelhante a esta:

    (Output Example)
    {
      "fqdns": "",
      "id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/MeanStack",
      "location": "eastus",
      "macAddress": "00-0D-3A-1E-1B-3B",
      "powerState": "VM running",
      "privateIpAddress": "10.0.0.5",
      "publicIpAddress": "104.211.9.245",
      "resourceGroup": "<rgn>[sandbox resource group name]</rgn>",
      "zones": ""
    }
    

    O nome da VM é MeanStack. Vai utilizar este nome em futuros comandos para identificar a VM com a qual pretende trabalhar.

  2. Abra a porta 80 na VM para permitir a receção de tráfego HTTP na aplicação Web que vai criar posteriormente.

    az vm open-port \
      --port 80 \
      --resource-group "<rgn>[sandbox resource group name]</rgn>" \
      --name MeanStack
    
  3. Crie uma ligação SSH para a VM.

    Embora o resultado do comando az vm create apresente o endereço IP público da VM, pode ser útil armazenar o endereço numa variável Bash.

    Comece por executar az vm show. Este comando guarda o endereço IP numa variável Bash chamada ipaddress.

    ipaddress=$(az vm show \
      --name MeanStack \
      --resource-group "<rgn>[sandbox resource group name]</rgn>" \
      --show-details \
      --query [publicIps] \
      --output tsv)
    
  4. Ligue-se à VM desta forma.

    ssh azureuser@$ipaddress
    

    Quando solicitado, digite sim para salvar a identidade da VM localmente para que conexões futuras sejam confiáveis.

    Irá utilizar a ligação SSH para configurar o software na máquina virtual nas próximas partes.

Resumo

Com a VM do Ubuntu pronta, pode começar a instalar cada componente da pilha MEAN. Comece pela instalação do MongoDB.