每个人,
任何人都可以帮助我使用 ARM 模板部署 WebJobs 吗?
谢谢,拉贾拉姆。
David Ebbo共享的模板展示了如何使用 Arm 模板部署 Webjobs。
在此模板中,触发的 Web 作业链接到由同一模板部署的网站。Webjob 是 jobCollection 的一部分。此 jobCollection 使用“dependsOn”节点链接到其父网站。
{
"apiVersion": "2014-08-01-preview",
"name": "[parameters('jobCollectionName')]",
"type": "Microsoft.Scheduler/jobCollections",
"dependsOn": [
"[resourceId('Microsoft.Web/Sites', parameters('siteName'))]"
],
"location": "[parameters('siteLocation')]",
"properties": {
"sku": {
"name": "standard"
},
"quota": {
"maxJobCount": "10",
"maxRecurrence": {
"Frequency": "minute",
"interval": "1"
}
}
},
"resources": [
{
"apiVersion": "2014-08-01-preview",
"name": "DavidJob",
"type": "jobs",
"dependsOn": [
"[resourceId('Microsoft.Scheduler/jobCollections', parameters('jobCollectionName'))]"
],
"properties": {
"startTime": "2015-02-10T00:08:00Z",
"action": {
"request": {
"uri": "[concat(list(resourceId('Microsoft.Web/sites/config', parameters('siteName'), 'publishingcredentials'), '2014-06-01').properties.scmUri, '/api/triggeredjobs/MyScheduledWebJob/run')]",
"method": "POST"
},
"type": "http",
"retryPolicy": {
"retryType": "Fixed",
"retryInterval": "PT1M",
"retryCount": 2
}
},
"state": "enabled",
"recurrence": {
"frequency": "minute",
"interval": 1
}
}
}
]
}
问候,
其他答案涵盖了在 Azure 中创建作业的模板方面,但仍然存在上传 webjob 可执行文件的问题。
假设此部署是更大的 Azure 网站部署的一部分,您只需将您的 webjob 可执行文件包含在您的网站分发中。
根据kudu 文档,放置 EXE 的约定如下:
要部署触发作业,请将您的二进制文件复制到:app_data\jobs\triggered\{job name}
要部署连续作业,请将您的二进制文件复制到:app_data\jobs\continuous\{job name}
Azure 调度器于 2019 年 12 月过时,此后,所有调度器作业集合和作业停止运行,这就是调度器作业集合不再可用的原因,应该使用Azure 逻辑应用程序。-将 Azure WebJobs 从 Azure Scheduler 迁移到 Azure Logic Apps。
这是一个 Azure 快速入门模板,它使用 Schedule Job 部署 Azure Web 应用程序。
此外,您是否查看过 Visual Studio 2015 Azure SDK 对 Azure 资源管理器项目类型的支持?它包含用于更轻松地直接从 Visual Studio 中创作 ARM 模板的 UI。