Exercice - Créer une machine virtuelle pour héberger votre application web

Effectué

Comme pour la plupart des frameworks d’applications, vous pouvez exécuter votre application de la pile MEAN dans de nombreux environnements différents. Vous pouvez exécuter votre application sur un ordinateur physique de votre salle de serveurs, sur une machine virtuelle ou dans des conteneurs.

Ici, vous allez exécuter votre application sur une machine virtuelle s’exécutant sur Azure. MEAN prend en charge de nombreux systèmes d’exploitation. Pour les besoins de ce tutoriel, nous utiliserons Ubuntu Linux.

Créer une machine virtuelle Ubuntu Linux

En règle générale, vous créez un groupe de ressources avant de créer d’autres ressources sur Azure. Un groupe de ressources est un conteneur regroupant les ressources associées d’une solution Azure. Dans cet exercice, le bac à sable Azure fournit un groupe de ressources pour vous. Toutefois, quand vous utilisez votre propre abonnement Azure, vous devez exécuter la commande suivante pour créer un groupe de ressources à proximité de votre localisation.

Notes

Vous devez exécuter l’exemple de code az group create suivant avec votre propre compte, et non avec ce bac à sable !

az group create \
  --name <resource-group-name> \
  --location <resource-group-location>
  1. À partir de Cloud Shell, exécutez la commande az vm create pour créer une machine virtuelle 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
    

    L’exécution de cette commande prend environ deux minutes. Une fois la commande terminée, vous verrez une sortie semblable à celle-ci :

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

    Le nom de la machine virtuelle est MeanStack. Vous utiliserez ce nom dans les commandes ultérieures pour identifier la machine virtuelle que vous souhaitez utiliser.

  2. Ouvrez le port 80 sur la machine virtuelle pour autoriser le trafic HTTP entrant vers l’application web que vous allez créer.

    az vm open-port \
      --port 80 \
      --resource-group "<rgn>[sandbox resource group name]</rgn>" \
      --name MeanStack
    
  3. Créez une connexion SSH à votre machine virtuelle.

    Bien que la sortie de la commande az vm create affiche l’adresse IP publique de votre machine virtuelle, il peut s’avérer utile de stocker l’adresse dans une variable Bash.

    Commencez par exécuter az vm show. Cette commande enregistre l’adresse IP dans une variable Bash nommée ipaddress.

    ipaddress=$(az vm show \
      --name MeanStack \
      --resource-group "<rgn>[sandbox resource group name]</rgn>" \
      --show-details \
      --query [publicIps] \
      --output tsv)
    
  4. Connectez-vous à votre machine virtuelle comme suit.

    ssh azureuser@$ipaddress
    

    Quand vous y êtes invité, entrez yes (oui) afin d’enregistrer l’identité de la machine virtuelle localement pour que les futures connexions soient approuvées.

    Vous utiliserez la connexion SSH pour configurer le logiciel sur la machine virtuelle dans les parties suivantes.

Résumé

Votre machine virtuelle Ubuntu étant prête à l’emploi, vous pouvez maintenant installer chaque composant de la pile MEAN. Vous commencerez par installer MongoDB.