教學課程:建立及部署您的第一個 ARM 範本

本教學課程將介紹 Azure Resource Manager (ARM 範本)。 其中示範如何建立入門範本,並將它部署至 Azure。 該教學課程會教導您範本結構和使用範本所需的工具。 完成此指示大約需要 12 分鐘,但實際時間則會根據您需要安裝的工具數目而有所不同。

此教學課程是系列中的第一個。 當您進行本課程系列時,將會逐步修改起始範本,直到您探索 ARM 範本的所有核心部分為止。 這些元素都是適用於更複雜範本的建置組塊。 我們希望在本系列結束時,您能夠有信心地建立自己的範本,並準備好使用範本來將部署自動化。

如果您想要了解使用範本的優點,以及為何要使用範本將部署自動化,請參閱 ARM 範本概觀。 若要透過一組引導式的 Learn 模組來了解 ARM 範本,請參閱使用 JSON ARM 範本來部署和管理 Azure 中的資源

如果您還沒有 Microsoft Azure 訂用帳戶,請在開始前建立免費帳戶

提示

如果您是 ARM 範本的新手,您可以考慮改為學習 Bicep。 Bicep 是新語言,提供與 ARM 範本相同的功能,但是語法更易於使用。 若要開始學習 Bicep,請參閱快速入門:使用 Visual Studio Code 建立 Bicep 檔案

取得工具

首先,確定您擁有建立及部署範本所需的工具。 在本機電腦上安裝這些工具。

編輯器

範本是 JavaScript 物件標記法 (JSON) 檔案。 若要建立範本,您需要良好的 JSON 編輯器。 我們建議使用含 Azure Resource Manager 工具擴充功能的 Visual Studio Code。 如果您需要安裝這些工具,請參閱快速入門:使用 Visual Studio Code 建立 ARM 範本

命令列部署

您也需要 Azure PowerShell 或 Azure 命令列介面 (CLI) 來部署範本。 如果您使用 Azure CLI,您需要有 2.37.0 版或更新版本。 如需安裝指示,請參閱:

安裝 Azure PowerShell 或 Azure CLI 之後,請確定您是第一次登入。 如需說明,請參閱登入 - PowerShell登入 - Azure CLI

重要

如果您使用的是 Azure CLI,請確定您有 2.37.0 版或更新版本。 如果您使用的是 Azure PowerShell,請確定您有 7.2.4 版或更新版本。 如果您使用較舊的版本,將無法使用本教學課程中所顯示的命令。 若要檢查您安裝的版本,請使用:az --version

好的,您已經準備好開始了解範本。

建立您的第一個範本

  1. 使用已安裝 ARM 處理器工具擴充功能開啟 Visual Studio Code。

  2. 從 [檔案] 功能表中,選取 [新增檔案] 以建立新檔案。

  3. 從 [檔案] 功能表中選取 [另存新檔]

  4. 將檔案命名為 azuredeploy,然後選取 [json] 副檔名。 檔案的完整名稱是 azuredeploy.json

  5. 將檔案儲存到您的工作站。 選取容易記住的路徑,因為您稍後將需要在部署範本時提供該路徑。

  6. 將下列 JSON 複製並貼到檔案中:

    {
      "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
      "contentVersion": "1.0.0.0",
      "resources": []
    }
    

    您的 Visual Studio Code 環境看起來會像這樣:

    Screenshot of Visual Studio Code displaying an empty ARM template with JSON structure in the editor.

    此範本不會部署任何資源。 我們會從空白範本開始,讓您能夠熟悉部署範本的步驟,同時將發生錯誤的機會降到最低。

    JSON 檔案具有下列元素:

    • $schema:指定 JSON 結構描述檔案的位置。 結構描述檔案會描述範本中可用的屬性。 例如,結構描述會將 resources 定義為範本的其中一個有效屬性。 不必擔心結構描述的日期是 2019-04-01。 此結構描述版本是最新的,而且包含所有最新功能。 結構描述日期尚未變更,因為在引進它之後就沒有任何重大變更。
    • contentVersion:指定範本版本 (例如 1.0.0.0)。 您可以為此元素提供任何值。 使用此值在範本中記載重大變更。 當您使用範本部署資源時,您可以使用此值來確定您使用的是正確的範本。
    • resources:包含您想要部署或更新的資源。 此處目前是空的,但您稍後將可新增資源。
  7. 儲存檔案。

恭喜,您已建立第一個範本。

登入 Azure

若要開始使用 Azure PowerShell 或 Azure CLI,請使用您的 Azure 認證登入。

選取下列程式碼區段中的索引標籤,以在 Azure PowerShell 和 Azure CLI 之間進行選擇。 本文中的 CLI 範例是針對 Bash Shell 所撰寫。

Connect-AzAccount

如果您有多個 Azure 訂用帳戶,請選取您要使用的訂用帳戶。 以您的訂用帳戶名稱取代 SubscriptionName。 除了訂用帳戶名稱之外,您也可以使用訂用帳戶識別碼。

Set-AzContext SubscriptionName

建立資源群組

部署範本時,您可指定要包含資源的資源群組。 執行部署命令之前,使用 Bash Azure CLI 或 Azure PowerShell 來建立資源群組。

注意

Azure CLI 的範例專為 Bash 殼層撰寫。 若要在 Windows PowerShell 或命令提示字元中執行此範例,您可能需要移除反斜線,並將命令撰寫為一行,例如:

az group create --name myResourceGroup --location "Central US"

New-AzResourceGroup `
  -Name myResourceGroup `
  -Location "Central US"

部署範本

若要部署範本,請使用 Azure CLI 或 Azure PowerShell。 使用您所建立的資源群組。 為部署提供名稱,讓您可以輕鬆地在部署記錄中識別它。 為了方便起見,也要建立變數來儲存範本檔案的路徑。 此變數可讓您更輕鬆地執行部署命令,因為您不需要在每次部署時重新輸入路徑。 以您範本檔案的路徑取代 {provide-the-path-to-the-template-file} 和大括弧 {}

$templateFile = "{provide-the-path-to-the-template-file}"
New-AzResourceGroupDeployment `
  -Name blanktemplate `
  -ResourceGroupName myResourceGroup `
  -TemplateFile $templateFile

此部署命令會傳回結果。 尋找 ProvisioningState,以查看部署是否成功。

注意

如果部署失敗,請使用 verbose 參數來取得所建立資源的相關資訊。 使用 debug 參數來取得更多資訊以進行偵錯。

驗證部署

您可以從 Azure 入口網站探索資源群組,藉以確認部署。

  1. 登入 Azure 入口網站

  2. 從左側功能表中,選取 [資源群組]

  3. 核取 myResourceGroup 左側的方塊,然後選取 myResourceGroup

  4. 選取您在上一個程序中建立的資源群組。 預設名稱為 myResourceGroup。 資源群組尚未有任何資源,因為您已部署空白範本。

  5. 請注意,在概觀中間的 [基本資訊] 區段中,頁面會顯示 [部署] 旁的部署狀態。 選取 [1 成功]

    Screenshot of Azure portal showing the deployment status in the Essentials section of the resource group.

  6. 您會看到資源群組的部署記錄。 核取 blanktemplate 左邊的方塊,然後選取 blanktemplate

    Screenshot of Azure portal displaying the deployment history with the blanktemplate deployment selected.

  7. 您會看到部署的摘要。 在此情況下,由於未部署任何資源,所以不會看到很多內容。 在本系列稍後,您可能發現它對於在部署記錄中檢閱摘要很有幫助。 請注意,您可以在左側查看部署所使用的輸入、輸出和範本。

    Screenshot of Azure portal showing the deployment summary for the blanktemplate deployment.

清除資源

如果您要繼續進行下一個教學課程,則不需要刪除資源群組。

如果您現在要停止,則可能想要刪除資源群組。

  1. 在 Azure 入口網站中,選取左側功能表中的 [資源群組]

  2. 在 [篩選任何欄位...] 文字欄位中輸入資源群組名稱。

  3. 核取 myResourceGroup 旁的方塊,然後選取 myResourceGroup 或資源群組名稱。

  4. 從頂端功能表中選取 [刪除資源群組]

    Screenshot of Azure portal with the Delete resource group option highlighted in the resource group view.

下一步

您已建立要部署至 Azure 的簡單範本。 在下一個教學課程中,您可學習如何將儲存體帳戶新增至範本,並將其部署至您的資源群組。