gpt4 book ai didi

Azure函数: confusion about remote build and run from package

转载 作者:行者123 更新时间:2023-12-03 05:10:57 28 4
gpt4 key购买 nike

通读Azure函数文档:

Deployment options

Run from package file

我有一些困惑需要澄清:

在远程构建中,它说:

When apps are built remotely on Linux, they run from the deployment package.

要使函数能够从包中运行:

To enable your function app to run from a package, add aWEBSITE_RUN_FROM_PACKAGE setting to your function app settings. TheWEBSITE_RUN_FROM_PACKAGE setting can have one of the following values:

and 1 is recommended for premium plan

总的来说,最后一个要点是:

If your project needs to use remote build, don't use theWEBSITE_RUN_FROM_PACKAGE app setting. Instead add theSCM_DO_BUILD_DURING_DEPLOYMENT=true deployment customization appsetting. For Linux, also add the ENABLE_ORYX_BUILD=true setting.

这不是矛盾吗?

  1. 在 Linux 中,当远程构建时,它们从部署包运行。

  2. 要启用从包运行,我们需要 WEBSITE_RUN_FROM_PACKAGE=1

  3. 但是,如果您的项目需要使用远程构建,请勿使用 WEBSITE_RUN_FROM_PACKAGE 应用设置。

我的概念一定是错误的。有人可以提供一些澄清吗?

为了理清思路,我想澄清几个问题:

  1. 当 Azure 执行远程构建时,构建过程的结果文件是什么?文件的格式是什么?该文件到底存储在哪里?

最佳答案

远程构建同时进行zip部署是指在远程构建服务器上构建函数应用的代码。

如果您的函数应用程序中有任何依赖项需要编译或在部署之前需要额外的构建步骤,则可以使用此方法。

使用 SCM_DO_BUILD_DURING_DEPLOYMENT=trueENABLE_ORYX_BUILD=true 进行远程构建:

enter image description here

  1. 当您将函数部署到 Azure 时,它​​会使用远程构建服务器来构建函数应用,该服务器配备了正确编译和打包代码所需的构建工具、运行时环境和依赖项。

  2. 远程构建服务器通过将所需的依赖项和包安装到部署包中来编译代码,并将包部署到 Azure Function App 运行时环境。

  3. 调用函数应用时,它会直接从远程服务器上构建的部署包运行,并包含所有依赖项和编译代码以正确执行函数。

由于应用程序是远程构建并作为包部署的,因此它已经从部署包运行。因此,不需要手动添加设置 WEBSITE_RUN_FROM_PACKAGE

enter image description here

WEBSITE_RUN_FROM_PACKAGE(无远程构建):

从包运行是指函数应用在运行时在这两种情况下使用部署包的内容。但是,远程构建和 zip 部署方案之间创建和管理部署包的方式有所不同。

enter image description here

enter image description here

  1. 使用 zip 部署方式部署函数时,函数应用的源代码、依赖项和所有必需的文件将打包到 zip 文件中。然后,将 zip 文件上传到 Azure 中函数的目标环境。之后,Azure 会将内容部署到函数应用的运行时环境。

  2. 通常,Azure Functions 会尝试直接从源代码位置(site/wwwroot)运行。

  3. 函数 app=>settings=>configuration 中的设置 WEBSITE_RUN_FROM_PACKAGE=1 允许 Azure 从通过 zip 部署而不是源代码上传的部署包运行应用程序。

  1. When Azure performs remote build, what is the resultant file of the build process? What is the format of the file? Where exactly is this file stored?

远程构建后检查函数应用的文件:

  • 转到函数应用的 KUDU 站点,调试控制台=>Bash
  • 导航至路径 data\SitePackages,如下所示:
  • 与功能相关的 zip 文件将与 packagename.txt 一起提供。

enter image description here

检查函数应用的文件(无需远程构建/Zip 部署):

enter image description here

关于Azure函数: confusion about remote build and run from package,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/76865114/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com