Упражнение. Создание виртуальной машины для размещения веб-приложения
Как и в большинстве платформ приложений, можно запускать приложение стека 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>
В окне Cloud Shell справа от экрана выберите "Параметры>перейти к классической версии".
В 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. Это имя будет использоваться в последующих командах для идентификации виртуальной машины, с которой вы собираетесь работать.
Откройте порт 80 на виртуальной машине, чтобы разрешить входящий HTTP-трафик в веб-приложение, которое вы создали позже.
az vm open-port \ --port 80 \ --resource-group "<rgn>[sandbox resource group name]</rgn>" \ --name MeanStack
Создайте 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)
Подключитесь к виртуальной машине следующим образом.
ssh azureuser@$ipaddress
При появлении запроса введите Да, чтобы сохранить удостоверение виртуальной машины локально и сделать последующие подключения доверенными.
Вы будете использовать SSH-подключение для настройки программного обеспечения на виртуальной машине в следующих частях.
Итоги
Когда виртуальная машина Ubuntu будет готова к работе, вы сможете установить каждый компонент стека MEAN. Сначала необходимо установить MongoDB.