Упражнение. Создание виртуальной машины для размещения веб-приложения

Завершено

Как и в большинстве платформ приложений, можно запускать приложение стека MEAN в разных средах. Приложение можно запустить на физическом компьютере в помещении серверной, в виртуальной машине или в контейнерах.

Здесь вы запускаете приложение на виртуальной машине, работающей в Azure. MEAN поддерживает множество операционных систем. В целях обучения мы используем Ubuntu Linux здесь.

Создание виртуальной машины Ubuntu Linux

Обычно нужно создать группу ресурсов, прежде чем создавать другие ресурсы в Azure. Группа ресурсов — это контейнер, содержащий связанные ресурсы для решения Azure. В этом упражнении песочница Azure предоставляет вам группу ресурсов. Однако при работе в собственной подписке Azure выполните следующую команду, чтобы создать группу ресурсов в расположении рядом с вами.

Примечание.

Приведенный ниже пример кода az group create предназначен для использования с учетной записью, а не этой песочницей!

az group create \
  --name <resource-group-name> \
  --location <resource-group-location>
  1. В окне Cloud Shell справа от экрана выберите "Параметры>перейти к классической версии".

  2. В Cloud Shell выполните az vm create команду, чтобы создать виртуальную машину 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
    

    Выполнение этой команды занимает около двух минут. После завершения команды вы увидите выходные данные, аналогичные этому примеру:

    (Output Example)
    {
      "fqdns": "",
      "id": "/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/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": ""
    }
    

    Имя виртуальной машины — MeanStack. Это имя будет использоваться в последующих командах для идентификации виртуальной машины, с которой вы собираетесь работать.

  3. Откройте порт 80 на виртуальной машине, чтобы разрешить входящий HTTP-трафик в веб-приложение, которое вы создали позже.

    az vm open-port \
      --port 80 \
      --resource-group "<rgn>[sandbox resource group name]</rgn>" \
      --name MeanStack
    
  4. Создайте SSH-подключение к вашей виртуальной машине.

    Несмотря на то, что выходные данные команды az vm create отображают общедоступный IP-адрес виртуальной машины, возможно, это полезно для хранения адреса в переменной Bash.

    Начните с выполнения команды az vm show. Эта команда сохраняет IP-адрес в переменной Bash с именем ipaddress.

    ipaddress=$(az vm show \
      --name MeanStack \
      --resource-group "<rgn>[sandbox resource group name]</rgn>" \
      --show-details \
      --query [publicIps] \
      --output tsv)
    
  5. Подключитесь к виртуальной машине следующим образом.

    ssh azureuser@$ipaddress
    

    При появлении запроса введите Да, чтобы сохранить удостоверение виртуальной машины локально и сделать последующие подключения доверенными.

    Вы будете использовать SSH-подключение для настройки программного обеспечения на виртуальной машине в следующих частях.

Итоги

Когда виртуальная машина Ubuntu будет готова к работе, вы сможете установить каждый компонент стека MEAN. Сначала необходимо установить MongoDB.