我正在尝试从 VisualStudio 发布一个 azure webjob,但它失败并出现错误



当我在门户中登录此 WebApp 并打开终端时,我看不到 web_app 文件夹。当我尝试使用 mkdir 创建它时,它失败了



我对其进行了更多测试 - 我无法在那里创建任何文件夹!

为什么 wwwroot 文件夹可能被锁定?

如果我用不同的 WebApp 尝试同样的事情 - 一切正常。我不想重新创建 webapp

更新

使用 WEBSITE_RUN_FROM_ZIP = 1 选项部署应用程序。它是一个 .NetCore 2.1 网络应用程序。

所以下一个问题是:

1) 如何使用 dotbet publish 命令将要发布的 WebJob 应用程序添加到与 webapp 相同的包中? (类似于 https://stackoverflow.com/a/50046561/1300049 )

2)或者如何将WebJob部署到VSTS中的d:\home\site\jobs\等替代位置?

更新 2

找到了一个我不太喜欢的解决方法。但它有效。但我对更好的解决方案持开放态度。

这个是基于下面列出的 2 个答案( https://stackoverflow.com/a/40049524/1300049https://stackoverflow.com/a/46661421/1300049 ):

1) 在构建阶段使用 MSBuild 构建整个解决方案,并使用类似于本答案中提供的参数的魔术参数 - https://stackoverflow.com/a/46661421/1300049

2) 然后,仍然在构建阶段为 webapp 项目运行 dotnet publish,但没有压缩

3) 作为构建的最终协议(protocol),将 webjob 的“app_data”(从第 1 步)复制到 webapp 的发布位置(第 2 步),然后将其全部压缩。

4) 在发布阶段,像往常一样使用工件进行部署。只需确保您使用“WEBJOBS_ROOT_PATH”环境变量删除了以前解决问题的所有尝试...

最佳答案

对我有用的是进入 Azure 门户,删除“WEBSITE_RUN_FROM_ZIP”配置设置,然后重新发布。

关于visual-studio - Azure WebJob - 创建目录失败,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52049817/

10-13 07:13