【问题标题】:Azure Web App using Node 10.x instead of 14.xAzure Web App 使用 Node 10.x 而不是 14.x
【发布时间】:2021-08-11 04:25:07
【问题描述】:

我正在使用 Azure Web 应用程序,每次尝试使其使用节点 14.x 时,它都会在每次部署后重置回 10.x。

当我转到配置 > 常规时,堆栈为空白,我必须选择节点,然后选择 14.x 才能使其工作。

编辑:使用 Linux 而非 Windows

【问题讨论】:

    标签: node.js azure azure-web-app-service


    【解决方案1】:

    为 Node 版本添加 WEBSITE_NODE_DEFAULT_VERSION app 设置,但请确保您填写的确切版本已安装在工作程序上(假设此处为 Windows 工作程序,因为您没有指定)-

    https://{yourWebAppName}.scm.azurewebsites.net/api/diagnostics/runtime
    

    这是返回运行时版本的 Kudu API 路由。从那里选择最新安装的 Node 版本。

    您的应用设置变为

    WEBSITE_NODE_DEFAULT_VERSION = 14.16.0
    

    只要您不删除或覆盖此应用设置,您的 Node 版本将在代码部署中保持一致。

    在此处跟踪 GitHub 问题,因为 documentation page 对版本值感到困惑 - https://github.com/MicrosoftDocs/azure-docs/issues/79475

    【讨论】:

    • 我试过了,但它仍然默认为 10.x,很抱歉在原帖中没有提到,但我使用的是 linux。
    • 能否编辑您的问题并添加部署日志?对我来说似乎工作正常,遥控器说Using Node version: v14.17.4,我可以通过在my web app 中回显process.version 来确认版本。也许您的 package.json 指定了它自己的 Node 版本并且优先于 Web 应用运行时堆栈设置?
    • 问题与我选择的 runtimeStack 有关,Azure Web Apps 不支持它,后来我意识到我必须使用 14-lts,现在它可以工作了。
    【解决方案2】:

    我设法通过添加来解决问题

    runtimeStack: "NODE|14-lts"
    

    在 yaml 文件中,16.x 尚不支持,因此默认为 10.x

    【讨论】:

      猜你喜欢
      • 2021-06-01
      • 2020-10-24
      • 1970-01-01
      • 2020-11-03
      • 1970-01-01
      • 2018-01-04
      • 2010-09-11
      • 2015-12-02
      • 2023-04-05
      相关资源
      最近更新 更多