如何使用Powershell Commandlet在App Service Environment中创建Azure WebApp

Gra*_*tie 4 powershell azure

我一直在尝试使用Powershell命令行开关在App Service Environment中创建Azure Web App

无论如何,我无法指定我的App Service Environment应该与New-AzureWebApp或New-AzureAppServicePlan命令行开关一起使用

在Web门户中,您将App Service Environment指定为位置...但是Powershell Commandlets似乎无法实现这一点(它们验证该位置是有效的"常规"Azure位置).

Gra*_*tie 5

回答我自己的问题:

我发现我可以使用New-AzureResourceGroup命令行开关和自定义的JSON模板创建一个新的Web App.我找不到在库中的ASE中配置Web App的任何模板,但是通过对门户使用的模板进行逆向工程,并从库中修改Microsoft.WebSite.0.3.17-preview.json模板,我可以使用以下命令创建WebApp:

New-AzureResourceGroup -Name $ResourceGroupName -Location "Australia Southeast" -TemplateFile $TemplateFile -siteName $SiteName -hostingPlanName $HostingPlanName -hostingEnvironment $HostingEnvironment -siteLocation "Australia Southeast" -workerSize 0 -sku "Premium"

使用$ TemplateFile变量,该变量包含以下模板文件的路径:

http://pastebin.com/VefC0Dz2

这只是Gallery中的0.3.17预览模板,具有以下修改:

添加hostingEnvironment参数

"parameters": { "hostingEnvironment": { "type": "string", "defaultValue": "" },

将hostingEnvironment属性添加到Microsoft.Web/serverfarms资源:

"resources": [ { "apiVersion": "2014-06-01", "name": "[parameters('hostingPlanName')]", "type": "Microsoft.Web/serverfarms", "location": "[parameters('siteLocation')]", "properties": { "name": "[parameters('hostingPlanName')]", "sku": "[parameters('sku')]", "workerSize": "[parameters('workerSize')]", "hostingEnvironment": "[parameters('hostingEnvironment')]", "numberOfWorkers": 0 } }, { "apiVersion": "2014-06-01", "name": "[parameters('siteName')]", "type": "Microsoft.Web/sites", "location": "[parameters('siteLocation')]", "tags": { "[concat('hidden-related:', '/subscriptions/', parameters('subscriptionId'),'/resourcegroups/', parameters('serverFarmResourceGroup'), '/providers/Microsoft.Web/serverfarms/', parameters('hostingPlanName'))]": "empty" }, "dependsOn": [ "[concat('Microsoft.Web/serverfarms/', parameters('hostingPlanName'))]" ], "properties": { "name": "[parameters('siteName')]", "serverFarm": "[parameters('hostingPlanName')]", "hostingEnvironment": "[parameters('hostingEnvironment')]" } },

我假设这可能也可以使用Add-AzureResource Commandlet完成,但我还没有尝试过.