Oefening: een virtuele machine maken voor het hosten van uw webtoepassing

Voltooid

Net als met de meeste toepassingsframeworks kunt u uw MEAN-stacktoepassing in talloze omgevingen uitvoeren. U kunt uw toepassing uitvoeren op een fysieke computer in de serverruimte, op een virtuele machine of in containers.

Hier voert u uw toepassing uit op een VM waarop Azure wordt uitgevoerd. MEAN ondersteunt veel verschillende besturingssystemen. Voor leerdoeleinden gebruikt u Hier Ubuntu Linux.

Een Ubuntu Linux-VM maken

Normaal gesproken maakt u een resourcegroep voordat u andere resources in Azure maakt. Een resourcegroep is een container met gerelateerde resources voor een Azure-oplossing. In deze oefening levert de Azure-sandbox een resourcegroep voor u. Wanneer u echter in uw eigen Azure-abonnement werkt, voert u de volgende opdracht uit om een resourcegroep te maken op een locatie bij u in de buurt.

Notitie

Het volgende az group create codevoorbeeld is bedoeld om te worden uitgevoerd met uw eigen account, niet met deze sandbox.

az group create \
  --name <resource-group-name> \
  --location <resource-group-location>
  1. Voer vanuit Cloud Shell de az vm create opdracht uit om een Ubuntu-VM te maken:

    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
    

    Het uitvoeren van de opdracht neemt ongeveer twee minuten in beslag. Wanneer de opdracht is voltooid, ziet u uitvoer die er ongeveer als volgt uit ziet:

    (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": ""
    }
    

    De naam van de virtuele machine is MeanStack. U gebruikt deze naam in toekomstige opdrachten voor het identificeren van de virtuele machine waarmee u wilt werken.

  2. Open poort 80 op de virtuele machine om binnenkomend HTTP-verkeer toe te staan naar de webtoepassing die u later gaat maken.

    az vm open-port \
      --port 80 \
      --resource-group "<rgn>[sandbox resource group name]</rgn>" \
      --name MeanStack
    
  3. Maak een SSH-verbinding naar de virtuele machine.

    Hoewel met de uitvoer van de opdracht az vm create het openbare IP-adres van de virtuele machine wordt weergegeven, vindt u het wellicht handig om het adres in een Bash-variabele op te slaan.

    Voer eerst az vm show uit. Met deze opdracht slaat u het IP-adres op in een Bash-variabele met de naam ipaddress.

    ipaddress=$(az vm show \
      --name MeanStack \
      --resource-group "<rgn>[sandbox resource group name]</rgn>" \
      --show-details \
      --query [publicIps] \
      --output tsv)
    
  4. Maak als volgt verbinding met uw virtuele machine.

    ssh azureuser@$ipaddress
    

    Wanneer u hierom wordt gevraagd, voert u ja in om de identiteit van de virtuele machine lokaal op te slaan, zodat toekomstige verbindingen worden vertrouwd.

    U gebruikt de SSH-verbinding om software te configureren op de virtuele machine in de volgende onderdelen.

Samenvatting

Nu de Ubuntu-VM klaar is voor gebruik, kunt u elk onderdeel van de MEAN-stack installeren. Als eerste installeert u MongoDB.