【问题标题】:How to setup Azure App Service to run on .Net Core through Azure Resource Manager如何通过 Azure 资源管理器设置 Azure 应用服务以在 .Net Core 上运行
【发布时间】:2019-09-17 18:48:16
【问题描述】:

我已经使用以下 ARM 模板 sn-p 设置了应用服务:

{
  "name": "[variables('webBackEnd')]",
  "type": "Microsoft.Web/sites",
  "location": "[parameters('location')]",
  "apiVersion": "2015-08-01",
  "dependsOn": [
    "[resourceId('Microsoft.Web/serverfarms', parameters('hostingPlanName'))]"
  ],
  "tags": {
    "[concat('hidden-related:', resourceId('Microsoft.Web/serverfarms', parameters('hostingPlanName')))]": "Resource",
    "displayName": "BackendWebApp"
  },
  "properties": {
    "name": "[variables('webBackEnd')]",
    "serverFarmId": "[resourceId('Microsoft.Web/serverfarms', parameters('hostingPlanName'))]"
  }
},

这将部署应用服务。但是,默认情况下,它将设置为使用 .Net 框架。下面是来自我的 Azure 门户的视图:

为了运行基于 ASP.Net Core 的 Web 服务器,我必须手动将堆栈设置从“.Net”切换到“.Net Core”。这是一件微不足道的事情,但我更愿意通过 ARM 模板正确配置它。我搜索了Microsoft's docs,但找不到正确的属性。如何做到这一点?

【问题讨论】:

    标签: azure-web-app-service azure-resource-manager


    【解决方案1】:

    以下是从门户创建示例网络应用程序时的外观:

    {
        "apiVersion": "2018-02-01",
        "name": "[parameters('name')]",
        "type": "Microsoft.Web/sites",
        "location": "[parameters('location')]",
        "properties": {
            "name": "[parameters('name')]",
            "siteConfig": {
                "appSettings": [],
                "metadata": [
                    {
                        "name": "CURRENT_STACK",
                        "value": "[parameters('currentStack')]"
                    }
                ]
            },
            // redacted some values
        }
    },
    

    当前堆栈值为dotnetcore

    【讨论】:

    • 非常有趣。当我在门户中创建应用服务时,运行时将预设为“.Net Core”。但我看不出导出的 ARM 模板有什么不同。此外,似乎控制堆栈设置的“元数据”属性未记录在Microsoft.Web sites template reference
    • 模板引用是垃圾,很遗憾
    • 我已验证您的解决方案按预期工作。谢谢!
    • 鉴于引用是垃圾,并且门户没有生成 CURRENT_STACK 元数据的东西,你到底是怎么发现的?
    • 对不起,我在这里回答了数百个问题,我真的不记得了。我猜它说什么。开始创建 webapp 并查看在创建之前使用的模板? @亚历山大施密特
    【解决方案2】:

    接受的答案对我不起作用。我开始自己的调查并完成了这段代码,它适用于我的案例。

    "type": "Microsoft.Web/sites",
    "apiVersion": "2018-11-01",
    "name": "[parameters('site_name')]",
    "location": "[resourceGroup().location]",
    .........................................
    
    "resources": [
     {
        "name": "metadata",
        "type": "config",
        "apiVersion": "2018-11-01",
        "dependsOn": [
            "[resourceId('Microsoft.Web/sites', parameters('site_name'))]"
        ],
        "tags": {
        },
        "properties": {
            "CURRENT_STACK": "dotnetcore"
        }
     }
    ]
    

    【讨论】:

      猜你喜欢
      • 2017-03-30
      • 2016-04-21
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-10-24
      • 2016-01-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多