Azure webapp: Stack settings

半城伤御伤魂 提交于 2020-05-08 15:02:22

问题


I can set my stack for a webapp through the portal:

I deploy my infra through an ARM template:

 "apiVersion": "2015-08-01",
  "type": "Microsoft.Web/sites",
  "name": "[variables('name')]",
  "location": "[parameters('location')]",
  "dependsOn": [
    "[concat(parameters('customer'),'-','webapp-small','-' , 'plan','-',parameters('env'))]"
  ],
  "properties": {
    "clientAffinityEnabled": false,
    "serverFarmId": "[resourceId('Microsoft.Web/serverfarms', concat(parameters('customer'),'-','webapp-small','-' , 'plan','-',parameters('env')))]",
    "siteConfig": {
      "alwaysOn": "[parameters('webAppAlwaysOn')]",
      "use32BitWorkerProcess": true,
      "connectionStrings": [
      ],
      "appSettings": [
        {
          "name": "WEBSITE_LOAD_CERTIFICATES",
          "value": "[reference(variables('name')).thumbprint]"
        },
        {
          "name": "WEBSITE_RUN_FROM_PACKAGE",
          "value": 0
        },
        {
          "name": "WEBSITE_ADD_SITENAME_BINDINGS_IN_APPHOST_CONFIG",
          "value": 1
        },
        {
          "name": "ASPNETCORE_ENVIRONMENT",
          "value": "[parameters('AspNetCoreEnvironment')]"
        },
        {
          "name": "EnvironmentOptions:ResourceGroupPostfix",
          "value": "[parameters('env')]"
        },
        {
          "name": "APPINSIGHTS_INSTRUMENTATIONKEY",
          "value": "[reference(variables('aiWebName')).InstrumentationKey]"
        },
        {
          "name": "IpWhiteList",
          "value": "[parameters('whitelist')]"
        }
      ]
    }
  }
}

The code deployed to this is a .NET Core 2.2 app. I can't see any place where i can set the stack settings: https://docs.microsoft.com/en-us/azure/templates/microsoft.web/2018-11-01/sites, but when i deploy the .NET Core code, everything works. What is the "Stack settings" for? Why can't I set it through ARM? Do I even need to set it? I imagine that the runtime can guess that it is a .NET Core application and then make it work automatically.


回答1:


Stack settings is to set what kind of language and the version of it that you want to use.App Service support six kind of language stacks: ASP.NET Core Node.js PHP Python Java Ruby. If you create on windows, there are 5 stacks can selected on portal(.NET .NET Core PHP Python Java). If you choose linux, there are 7 stacks can selected on portal(Ruby Node PHP .NET Core Java8 Java11 Python).

It looks like you create a app service on windows OS, so after initial web app creation, there isn’t a need to identify that an app is a .NET Core app anymore because the .NET Core bits are already installed on the underlying worker. You can have a look of this Offical doc to learn more about Azure App Service Configuration.



来源:https://stackoverflow.com/questions/58392312/azure-webapp-stack-settings

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!