无论如何,我无法指定我的App Service Environment应该与New-AzureWebApp或New-AzureAppServicePlan命令行开关一起使用
在Web门户中,您将App Service Environment指定为位置…但是Powershell Commandlets似乎无法实现这一点(它们验证该位置是有效的“常规”Azure位置).
回答我自己的问题:我发现我可以使用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参数
“参数”:{
“hostingEnvironment”:{
“type”:“string”,
“默认值”: ””
},
将hostingEnvironment属性添加到Microsoft.Web / serverfarms资源:
“资源”:[
{
“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 /’,参数(‘hostingPlanName’))]“:”空“
},
“依赖于取决于”: [
“[concat(‘Microsoft.Web / serverfarms /’,parameters(‘hostingPlanName’))]”
]
“properties”:{
“name”:“[parameters(‘siteName’)]”,
“serverFarm”:“[parameters(‘hostingPlanName’)]”,
“hostingEnvironment”:“[parameters(‘hostingEnvironment’)]”
}
},
我假设这可能也可以使用Add-AzureResource Commandlet完成,但我还没有尝试过.