部署到 Azure Web App 后找不到 webjob?
Posted
技术标签:
【中文标题】部署到 Azure Web App 后找不到 webjob?【英文标题】:Cant find webjob once deployed to Azure Web App? 【发布时间】:2021-11-06 15:40:20 【问题描述】:我在 Azure 中有一个 webapp,在 RG TestRG 中有一个 TestApp。我创建了一个用于部署的 zip,并使用以下 powershell 脚本
az webapp deployment source config-zip -n "TestApp" -g "TestRG" --src "c:\test\deployfile.zip"
它给出警告
“az : 为 zip 部署获取 scm 站点凭据”
然后它说:
Starting zip deployment. This operation can take a while to complete ...
Deployment endpoint responded with status code 202
但在那之后我得到一个json响应,它在provisioningState字段下成功。
当我在设置 -WebJobs 下导航到 Azure 中的应用服务时,我没有看到该网络作业?
powershell脚本有问题吗?
【问题讨论】:
您能检查一下目录结构吗?要部署网络作业,请创建一个具有内容结构的 zip 文件,因为它将按原样压缩到 d:\home\site\wwwroot - 例如,打开 zip 文件时的***文件夹应该是 App_Data 文件夹。然后,只需使用 zipdeploy 来部署 zip。请参阅-此文档链接github.com/projectkudu/kudu/wiki/WebJobs 另请查看此博客链接:mariankostal.com/2020/07/17/… 【参考方案1】:谢谢SnehaAgrawal-MSFT。发布您的建议作为答案,以帮助其他社区成员。
要部署网络作业,请检查您的目录结构。尝试创建一个压缩到 d:\home\site\wwwroot 的 zip 文件,打开 ZIP 文件后,您将在其中找到一个名为 App_Data 的文件夹。
以下代码将帮助您部署 Azure Web 作业。
param
(
[string] $buildOutput = $(throw "Directory with build output is required"),
[string] $resourceGroupName = $(throw "Resource group name is required"),
[string] $webAppName = $(throw "Web app name is required"),
[string] $webJobName = $(throw "Web job name is required"),
[string] $webJobType = "triggered"
)
$currentDir = (Get-Item .).FullName
$tempDir = "$currentDir\Temp"
$webJobDir = "$tempDir\App_Data\jobs\$webJobType\$webJobName"
New-Item $webJobDir -ItemType Directory
Copy-Item "$buildOutput\*" -Destination $webJobDir -Recurse
Compress-Archive -Path "$tempDir\*" -DestinationPath ".\$webJobName.zip"
Remove-Item $tempDir -Recurse -Force
az webapp deployment source config-zip -g $resourceGroupName -n $webAppName --src "$webJobName.zip"
您能否查看Deploy Azure Web Job 文档以获取更多信息。还要检查该文档中的相关链接。
【讨论】:
以上是关于部署到 Azure Web App 后找不到 webjob?的主要内容,如果未能解决你的问题,请参考以下文章
我应该使用 Docker 将 Web API 项目(微服务)部署到 Azure Web App [关闭]