Azure pipelines Azure.net核心应用程序服务未从包运行
我使用azure管道部署我的应用程序。Azure pipelines Azure.net核心应用程序服务未从包运行,azure-pipelines,azure-app-service-envrmnt,azure-appservice,Azure Pipelines,Azure App Service Envrmnt,Azure Appservice,我使用azure管道部署我的应用程序。 首先使用dotnet构建,然后发布,然后部署 - task: PublishBuildArtifacts@1 inputs: PathtoPublish: '$(Build.ArtifactStagingDirectory)\DQMIntegration\' ArtifactName: 'DQMIntegration' publishLocation: 'Container' - task: AzureRmWebAppDepl
首先使用dotnet构建,然后发布,然后部署
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)\DQMIntegration\'
ArtifactName: 'DQMIntegration'
publishLocation: 'Container'
- task: AzureRmWebAppDeployment@4
inputs:
ConnectionType: 'AzureRM'
azureSubscription: 'DQM-NonProd'
appType: 'webApp'
WebAppName: 'stg-DQMIntegration'
deployToSlotOrASE: true
ResourceGroupName: 'ESSP-N-1-QTYF-RG-2'
SlotName: 'production'
packageForLinux: '$(Build.ArtifactStagingDirectory)/DQMIntegration/'
部署在Azure应用程序服务中设置网站\u RUN\u FROM\u PACKAGE=1。但是,应用程序不会运行
应用程序显示在这两种情况下都在Azure控制台中运行
我没有从包或其他地方运行的特定要求,但我不理解为什么应用程序不运行form package,或者为什么管道会将其设置为form package。在kudu控制台中,我看到zip文件已上载到data/SitePackages中,并且有一个packagename.txt文件,文件名为最新上载的zip。
我的应用程序服务处于ASE中。这是一个c夏普API
有什么想法吗?实际上,从软件包运行与ZIP Depoly不同 您所做的是ZIP部署,您不需要从应用程序包中添加
网站\u运行\u
应用程序内设置。此环境变量将使wwwroot下的文件成为只读文件,WEBSITE\u RUN\u FROM\u PACKAGE=“1”
允许您将应用程序从包local运行到应用程序,因此仅当您希望从本地包运行应用程序时,才将其值设置为'1'
如果您想从远程软件包运行,您可以这样做:WEBSITE\u run\u from\u package=url
由于设置了“网站\u运行\u自\u程序包应用程序”设置,因此此命令不会将程序包内容提取到应用程序的D:\home\site\wwwroot目录。相反,它按原样将ZIP文件上载到D:\home\data\SitePackages,并在同一目录中创建一个packagename.txt,其中包含要在运行时加载的ZIP包的名称。如果以其他方式(如FTP)上载ZIP包,则需要手动创建D:\home\data\SitePackages目录和packagename.txt文件
是的,如果kudu中的文件正确,它应该运行。由于您没有使用run from package,因此
网站\u run\u from\u package=“1”
无法找到所需的文件,这就是问题的原因。感谢您的输入。我对这两个特点很感兴趣。网站\u运行\u从\u包有这两个设置。如果您的zip文件位于Azure存储中,则可以给出Url。将其设置为1将从上载位置/home//data/SitePackages运行它。在那个地方还有一个文件packagename.txt指向应该运行的zip文件。你肯定是对的。关键是当我们从_PACKAGE=“1”设置网站时,它是如何工作的。我已经更新了我的答案,希望它能帮上一点忙。嗨@Tauqir,如果这个解决方案有帮助的话,你介意接受它作为其他人参考的答案吗?