Übung: Erstellen einer VM zum Hosten der Web-App

Abgeschlossen

Wie bei den meisten Anwendungsframeworks können Sie Ihre MEAN-Stapelanwendung in vielen verschiedenen Umgebungen ausführen. Sie können die App auf einem physischen Computer in Ihrem Serverraum, auf einem virtuellen Computer oder in Containern ausführen.

Für diese Lerneinheit führen Sie Ihre App auf einer VM in Azure aus. MEAN unterstützt viele verschiedene Betriebssysteme. Zu Lernzwecken verwenden Sie hier Ubuntu Linux.

Erstellen einer Ubuntu Linux-VM

Normalerweise würden Sie eine Ressourcengruppe erstellen, bevor Sie andere Ressourcen in Azure erstellen. Eine Ressourcengruppe ist ein Container, der zusammengehörige Ressourcen für eine Azure-Lösung enthält. Für diese Übung stellt die Azure-Sandbox eine Ressourcengruppe für Sie bereit. Wenn Sie jedoch mit Ihrem eigenen Azure-Abonnement arbeiten, führen Sie den folgenden Befehl aus, um eine Ressourcengruppe an einem Standort in Ihrer Nähe zu erstellen.

Hinweis

Das folgende az group create Codebeispiel soll auf Ihrem eigenen Konto und nicht in dieser Sandbox ausgeführt werden.

az group create \
  --name <resource-group-name> \
  --location <resource-group-location>
  1. Führen Sie den Befehl az vm create in Cloud Shell aus, um eine Ubuntu-VM zu erstellen:

    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
    

    Die Ausführung dieses Befehls dauert ungefähr zwei Minuten. Wenn der Befehl durchgeführt wurde, wird eine Ausgabe ähnlich der folgenden angezeigt:

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

    Der Name der VM lautet MeanStack. Diesen Namen verwenden Sie in zukünftigen Befehlen, um die VM zu identifizieren, die Sie verwenden möchten.

  2. Öffnen Sie Port 80 der VM, um eingehenden HTTP-Datenverkehr zu der Web-App zuzulassen, die Sie später erstellen.

    az vm open-port \
      --port 80 \
      --resource-group "<rgn>[sandbox resource group name]</rgn>" \
      --name MeanStack
    
  3. Erstellen Sie eine SSH-Verbindung mit Ihrer VM.

    Obwohl die Ausgabe des az vm create-Befehls die öffentliche IP-Adresse Ihrer VM anzeigt, kann es sich als nützlich erweisen, die Adresse in einer Bash-Variable zu speichern.

    Führen Sie zunächst az vm show aus. Dieser Befehl speichert die IP-Adresse in einer Bash-Variable namens ipaddress.

    ipaddress=$(az vm show \
      --name MeanStack \
      --resource-group "<rgn>[sandbox resource group name]</rgn>" \
      --show-details \
      --query [publicIps] \
      --output tsv)
    
  4. Stellen Sie wie folgt eine Verbindung mit Ihrer VM her.

    ssh azureuser@$ipaddress
    

    Geben Sie Ja ein, wenn Sie dazu aufgefordert werden, um die Identität der VM lokal zu speichern, sodass zukünftige Verbindungen als vertrauenswürdig eingestuft werden.

    Benutzen Sie die SSH-Verbindung, um im Folgenden Software auf dem virtuellen Computer zu konfigurieren.

Zusammenfassung

Da Ihre Ubuntu-VM nun einsatzbereit ist, können Sie die Komponenten des MEAN-Stapels installieren. Sie beginnen mit der Installation von MongoDB.