Sdílet prostřednictvím


Kurz: Použití šablon rychlého startu Azure

Šablony rychlého startu Azure jsou úložiště šablon, které přispěly komunitou. Ukázkové šablony můžete použít ve vývoji šablon. V tomto kurzu najdete definici prostředku webu a přidáte ji do vlastní šablony. Dokončení této instrukce trvá 12 minut .

Požadavky

Doporučujeme, abyste dokončili kurz o exportovaných šablonách, ale není to nutné.

Potřebujete Visual Studio Code a Azure PowerShell nebo Azure CLI. Další informace najdete v nástrojích šablon.

Kontrola šablony

Na konci předchozího kurzu měla vaše šablona následující soubor JSON:

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "storagePrefix": {
      "type": "string",
      "minLength": 3,
      "maxLength": 11
    },
    "storageSKU": {
      "type": "string",
      "defaultValue": "Standard_LRS",
      "allowedValues": [
        "Standard_LRS",
        "Standard_GRS",
        "Standard_RAGRS",
        "Standard_ZRS",
        "Premium_LRS",
        "Premium_ZRS",
        "Standard_GZRS",
        "Standard_RAGZRS"
      ]
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]"
    },
    "appServicePlanName": {
      "type": "string",
      "defaultValue": "exampleplan"
    }
  },
  "variables": {
    "uniqueStorageName": "[concat(parameters('storagePrefix'), uniqueString(resourceGroup().id))]"
  },
  "resources": [
    {
      "type": "Microsoft.Storage/storageAccounts",
      "apiVersion": "2025-06-01",
      "name": "[variables('uniqueStorageName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "[parameters('storageSKU')]"
      },
      "kind": "StorageV2",
      "properties": {
        "supportsHttpsTrafficOnly": true
      }
    },
    {
      "type": "Microsoft.Web/serverfarms",
      "apiVersion": "2025-03-01",
      "name": "[parameters('appServicePlanName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "B1",
        "tier": "Basic",
        "size": "B1",
        "family": "B",
        "capacity": 1
      },
      "kind": "linux",
      "properties": {
        "perSiteScaling": false,
        "reserved": true,
        "targetWorkerCount": 0,
        "targetWorkerSizeId": 0
      }
    }
  ],
  "outputs": {
    "storageEndpoint": {
      "type": "object",
      "value": "[reference(variables('uniqueStorageName')).primaryEndpoints]"
    }
  }
}

Tato šablona funguje pro nasazení účtů úložiště a plánů služby App Service, ale můžete do ní přidat web. Předdefinované šablony můžete použít k rychlému zjištění kódu JSON potřebného k nasazení prostředku.

Najít šablonu

  1. Otevřít Azure Šablony rychlého startu

  2. Vyberte dlaždici s názvem Nasadit základní webovou aplikaci pro Linux. Pokud máte potíže s jeho nalezením, tady je přímý odkaz.

  3. Vyberte Procházet na GitHubu.

  4. Vyberte azuredeploy.json.

  5. Zkontrolujte šablonu. Vyhledejte Microsoft.Web/sites prostředek.

    Rychlý start pro webovou stránku šablony Správce prostředků

Revize existující šablony

Sloučit šablonu rychlého startu s existující šablonou:

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "storagePrefix": {
      "type": "string",
      "minLength": 3,
      "maxLength": 11
    },
    "storageSKU": {
      "type": "string",
      "defaultValue": "Standard_LRS",
      "allowedValues": [
        "Standard_LRS",
        "Standard_GRS",
        "Standard_RAGRS",
        "Standard_ZRS",
        "Premium_LRS",
        "Premium_ZRS",
        "Standard_GZRS",
        "Standard_RAGZRS"
      ]
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]"
    },
    "appServicePlanName": {
      "type": "string",
      "defaultValue": "exampleplan"
    },
    "webAppName": {
      "type": "string",
      "metadata": {
        "description": "Base name of the resource such as web app name and app service plan "
      },
      "minLength": 2
    },
    "linuxFxVersion": {
      "type": "string",
      "defaultValue": "php|7.0",
      "metadata": {
        "description": "The Runtime stack of current web app"
      }
    }
  },
  "variables": {
    "uniqueStorageName": "[concat(parameters('storagePrefix'), uniqueString(resourceGroup().id))]",
    "webAppPortalName": "[concat(parameters('webAppName'), uniqueString(resourceGroup().id))]"
  },
  "resources": [
    {
      "type": "Microsoft.Storage/storageAccounts",
      "apiVersion": "2025-06-01",
      "name": "[variables('uniqueStorageName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "[parameters('storageSKU')]"
      },
      "kind": "StorageV2",
      "properties": {
        "supportsHttpsTrafficOnly": true
      }
    },
    {
      "type": "Microsoft.Web/serverfarms",
      "apiVersion": "2025-03-01",
      "name": "[parameters('appServicePlanName')]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "B1",
        "tier": "Basic",
        "size": "B1",
        "family": "B",
        "capacity": 1
      },
      "kind": "linux",
      "properties": {
        "perSiteScaling": false,
        "reserved": true,
        "targetWorkerCount": 0,
        "targetWorkerSizeId": 0
      }
    },
    {
      "type": "Microsoft.Web/sites",
      "apiVersion": "2025-03-01",
      "name": "[variables('webAppPortalName')]",
      "location": "[parameters('location')]",
      "dependsOn": [
        "[resourceId('Microsoft.Web/serverfarms', parameters('appServicePlanName'))]"
      ],
      "kind": "app",
      "properties": {
        "serverFarmId": "[resourceId('Microsoft.Web/serverfarms', parameters('appServicePlanName'))]",
        "siteConfig": {
          "linuxFxVersion": "[parameters('linuxFxVersion')]"
        }
      }
    }
  ],
  "outputs": {
    "storageEndpoint": {
      "type": "object",
      "value": "[reference(variables('uniqueStorageName')).primaryEndpoints]"
    }
  }
}

Název webové aplikace musí být jedinečný v rámci Azure. Aby se zabránilo duplicitním názvům, webAppPortalName proměnná se aktualizuje na "webAppPortalName": "[concat(parameters('webAppName'), '-webapp')]""webAppPortalName": "[concat(parameters('webAppName'), uniqueString(resourceGroup().id))]".

Na konec Microsoft.Web/serverfarms definice přidejte čárku, která oddělí definici prostředku od Microsoft.Web/sites definice.

V tomto novém prostředku je potřeba poznamenat několik důležitých funkcí.

Má element s názvem dependsOn , který je nastavený na plán služby App Service. Toto nastavení se vyžaduje, protože před vytvořením webové aplikace musí existovat plán služby App Service. Element dependsOn říká Resource Manageru, jak uspořádat prostředky pro nasazení.

Vlastnost serverFarmId používá funkci resourceId . Tato funkce získá jedinečný identifikátor prostředku. V tomto případě získá jedinečný identifikátor plánu App Service. Webová aplikace je přidružená k jednomu konkrétnímu plánu služby App Service.

Nasazení šablony

K nasazení šablony použijte Azure CLI nebo Azure PowerShell.

Pokud jste skupinu prostředků nevytvořili, přečtěte si téma Vytvoření skupiny prostředků. V příkladu se předpokládá, že jste nastavili proměnnou templateFile na cestu k souboru šablony, jak je znázorněno v prvním kurzu.

New-AzResourceGroupDeployment `
  -Name addwebapp `
  -ResourceGroupName myResourceGroup `
  -TemplateFile $templateFile `
  -storagePrefix "store" `
  -storageSKU Standard_LRS `
  -webAppName demoapp

Poznámka:

Pokud se nasazení nezdaří, použijte přepínač verbose k získání informací o prostředcích, které vytváříte. Použijte přepínač debug k získání více informací pro ladění.

Vyčistěte zdroje

Pokud přecházíte k dalšímu kurzu, není nutné skupinu prostředků mazat.

Pokud se teď zastavujete, možná budete chtít odstranit skupinu prostředků.

  1. Na webu Azure Portal vyberte v nabídce vlevo skupiny prostředků .
  2. Do pole Filtr zadejte název skupiny prostředků pro libovolné textové pole...
  3. Zaškrtněte políčko vedle myResourceGroup a vyberte myResourceGroup nebo název vaší skupiny prostředků.
  4. V horní nabídce vyberte Odstranit skupinu prostředků .

Další kroky

Naučili jste se používat šablonu rychlého startu pro vývoj šablon. V dalším tutoriálu přidáte značky k prostředkům.