練習 - 建立 VM 裝載您的 Web 應用程式
和大部分的應用程式架構相同,您可以在許多不同的環境中執行 MEAN 堆疊應用程式。 您可以在伺服器室中的實體電腦上、虛擬機器上或容器中執行您的應用程式。
在這裡,您會在執行 Azure 的虛擬機器 (VM) 上執行您的應用程式。 MEAN 能支援許多不同的作業系統。 基於學習目的,在這裡我們使用 Ubuntu Linux。
建立 Ubuntu Linux VM
在 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 VM: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": "" }
VM 的名稱為 MeanStack。 您將會在未來的命令中使用這個名稱,以識別您想要處理的 VM。
開啟 VM 上的連接埠 80,以允許傳入 HTTP 流量到達您稍後建立的 Web 應用程式。
az vm open-port \ --port 80 \ --resource-group "<rgn>[sandbox resource group name]</rgn>" \ --name MeanStack
建立針對您 VM 的 SSH 連線。
雖然來自
az vm create
命令的輸出會顯示您 VM 的公用 IP 位址,我們仍建議您將該位址儲存在 Bash 變數中。請透過執行
az vm show
開始。 此命令會將 IP 位址儲存在名為ipaddress
的 Bash 變數中。ipaddress=$(az vm show \ --name MeanStack \ --resource-group "<rgn>[sandbox resource group name]</rgn>" \ --show-details \ --query [publicIps] \ --output tsv)
以此方式連線到您的 VM。
ssh azureuser@$ipaddress
出現提示時,請輸入 yes 以在本機儲存 VM 的身分識別,讓未來的連線受信任。
在接下來的部分中,您將使用 SSH 連線來設定虛擬機器上的軟體。
摘要
準備好 Ubuntu VM 之後,您就可以安裝 MEAN 堆疊的每個元件了。 從安裝 MongoDB 開始。