首页 文章

Docker并行运行cron作业

提问于
浏览
2

使用简单的服务器

我使用一个简单的节点(centos或ubuntu)来运行我的Web应用程序,并在那里配置了一些cron作业来运行计划任务 . 在那一刻,一切都奏效了 .


使用Docker Swarm Cluster

我将我的应用程序迁移到Docker Swarm集群 . 现在,crons同时在多个容器中运行,这对我来说至关重要 . 我知道Docker正在研究名为 jobs 的新功能,但我现在需要一个解决方案 . 我想知道是否有任何方法可以运行一种cron作业流程 .


拦截器

crons正在执行以下任务:

  • 创建有关流程的报告 .

  • 向其他服务发送通知 .

  • 更新应用程序中的数据 .

crons需要在服务器上运行,因为配置为使用php命令使用接口和 endpoints .


我的问题

我创建了同一个docker服务的多个实例来提供可用性 . 所有实例都在3个节点的集群中运行,并且每个节点都在同时并行运行其cron作业,我希望每个docker服务只运行一个作业 .

1 回答

  • 0

    也许这将是一个解决方案,定期创建一个docker服务,重启条件为none和replicas 1或创建一个带有副本1和重启条件的cron容器,它将是调度程序并附加一个包含所需cron脚本的卷 .

相关问题