Azure Web应用程序上忽略SCM_REPOSITORY_PATH

时间:2017-10-19 18:59:24

标签: azure-web-sites

所以我刚读了几篇博客,在一个天蓝色的网页应用程序中将SCM_REPOSITORY_PATH设置为D:\ local \ repository可以加快NPM / WebPack的构建时间。我尝试通过门户网站和.deployment脚本将其添加到我的应用程序的应用程序设置中,但它似乎被忽略了。 Kudu文档和来自MS人员的视频均表示支持,但在我的案例中似乎完全被忽略了。

我错过了什么吗?

2 个答案:

答案 0 :(得分:1)

据我所知,如果将SCM_REPOSITORY_PATH设置为D:\ local \ repository,它将提高NPM / WebPack构建时间的速度。

在这里,我还使用azure web app从github继续部署,在我身边创建了一个测试演示。

我的项目是net core2.0角度模板。

我只是在azure门户中添加appsetting,如下所示:

enter image description here

结果如下:

详细日志,您可以发现它可以提高运行webpack的速度。

enter image description here

答案 1 :(得分:0)

他们没有说谎,设置SCM_REPOSITORY_PATH="D:\local\repository"会告诉kudu将源代码下载到Web服务器的本地驱动器,所有文件系统相关操作都是在本地执行而不是通过网络执行(D:\home映射到一个持久的NFS),这对IO重指令(npm)特别有用。但是有一些细节......

  1. 您无法使用.deployment进行此设置。原因是.deployment是您的存储库的一部分,只有在下载后才能看到kudu。这个工作流程显示了困境:
    下载源代码 ==>阅读.deployment ==> 在下载期间更改存储源代码的位置...

  2. D:\local不是持久性存储,它会在每次重新启动Web服务器后重置(这就是为什么TEMP文件夹映射到D:\local\Temp)所以如果你想要持久性使用{{1} }

  3. D:\home可能小于D:\local。在免费网站上,本地驱动器为500MB,而D:\ home大约为1G ...当项目具有巨大的依赖关系树时,运行D:\home时需要小心