Ćwiczenie — tworzenie maszyny wirtualnej do hostowania aplikacji internetowej

Ukończone

Tak samo, jak w przypadku większości struktur aplikacji, aplikacje oparte na stosie MEAN można uruchamiać w wielu różnych środowiskach. Możesz uruchomić aplikację na komputerze fizycznym w serwerowni, na maszynie wirtualnej lub w kontenerach.

W tym miejscu uruchomisz aplikację na maszynie wirtualnej uruchomionej na platformie Azure. Stos MEAN obsługuje wiele różnych systemów operacyjnych. W celach szkoleniowych używamy tutaj systemu Ubuntu Linux.

Uwaga

To ćwiczenie jest opcjonalne. Jeśli chcesz wykonać to ćwiczenie, przed rozpoczęciem musisz utworzyć subskrypcję platformy Azure. Jeśli nie masz konta platformy Azure lub nie chcesz go tworzyć w tej chwili, możesz zapoznać się z instrukcjami, aby zrozumieć prezentowane informacje.

Uwaga

Aby wykonać kroki opisane w tym ćwiczeniu, musisz użyć grupy zasobów. Możesz użyć utworzonej już grupy zasobów lub utworzyć nową grupę zasobów specjalnie na potrzeby tego ćwiczenia. Jeśli zdecydujesz się utworzyć nową grupę zasobów, ułatwi to wyczyszczenie wszelkich zasobów utworzonych podczas wykonywania ćwiczenia. Jeśli nie masz istniejącej grupy zasobów lub chcesz utworzyć nową specjalnie dla tego ćwiczenia, możesz wykonać kroki opisane w temacie Używanie witryny Azure Portal i usługi Azure Resource Manager do zarządzania grupami zasobów w celu utworzenia grupy zasobów przy użyciu witryny Azure Portal lub wykonaj kroki opisane w temacie Zarządzanie grupami zasobów platformy Azure przy użyciu interfejsu wiersza polecenia platformy Azure , aby utworzyć grupę zasobów przy użyciu interfejsu wiersza polecenia platformy Azure.

Tworzenie maszyny wirtualnej z systemem Ubuntu Linux

Zwykle należy utworzyć grupę zasobów przed utworzeniem innych zasobów na platformie Azure. Grupa zasobów to kontener, który zawiera zasoby powiązane z rozwiązaniem platformy Azure. Jeśli grupa zasobów nie została jeszcze utworzona, możesz uruchomić następujące polecenie, aby utworzyć grupę zasobów w lokalizacji w pobliżu.

az group create \
  --name <resource-group-name> \
  --location <resource-group-location>
  1. Otwórz usługę Azure Cloud Shell, a następnie wybierz pozycję Ustawienia>Przejdź do wersji klasycznej.

  2. W usłudze Cloud Shell uruchom az vm create polecenie , aby utworzyć maszynę wirtualną z systemem Ubuntu. Zastąp myResourceGroupName w poniższym przykładzie nazwą istniejącej grupy zasobów lub nazwą grupy zasobów utworzonej na potrzeby tego ćwiczenia.

    az vm create \
      --resource-group "myResourceGroupName" \
      --name MeanStack \
      --image Canonical:0001-com-ubuntu-server-focal:20_04-lts:latest \
      --admin-username azureuser \
      --generate-ssh-keys
    

    Wykonanie tego polecenia trwa około 2 minut. Po zakończeniu polecenia zobaczysz dane wyjściowe podobne do tego przykładu:

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

    Nazwa maszyny wirtualnej to MeanStack. Ta nazwa będzie używana w kolejnych poleceniach do identyfikowania maszyny wirtualnej, z którą chcesz pracować.

  3. Otwórz port 80 na maszynie wirtualnej, aby zezwolić na ruch przychodzący HTTP do utworzonej później aplikacji internetowej.

    az vm open-port \
      --port 80 \
      --resource-group "myResourceGroupName" \
      --name MeanStack
    
  4. Utwórz połączenie SSH z maszyną wirtualną.

    Mimo że dane wyjściowe polecenia az vm create wyświetla publiczny adres IP maszyny wirtualnej, warto przechowywać adres w zmiennej powłoki Bash.

    Zacznij od uruchomienia polecenia az vm show. To polecenie zapisuje adres IP w zmiennej powłoki Bash o nazwie ipaddress.

    ipaddress=$(az vm show \
      --name MeanStack \
      --resource-group "myResourceGroupName" \
      --show-details \
      --query [publicIps] \
      --output tsv)
    
  5. Połącz się z maszyną wirtualną w następujący sposób.

    ssh azureuser@$ipaddress
    

    Po wyświetleniu monitu systemowego wprowadź tak, aby zapisać tożsamość maszyny wirtualnej lokalnie, tak aby przyszłe połączenia były zaufane.

    W następnych częściach skonfigurujesz oprogramowanie na maszynie wirtualnej przy użyciu połączenia SSH.

Podsumowanie

Maszyna wirtualna z systemem Ubuntu jest już gotowa, możesz więc zainstalować poszczególne składniki stosu MEAN. Zacznij od zainstalowania bazy danych MongoDB.