Dockerized sidekiq中的Rails后台作业与时间表重复



我将Rails+Sidekiq与when-gem一起使用。app和sidekiq都是通过docker compose运行的独立docker容器。

services:
app:
build:
dockerfile: Dockerfile
...
sidekiq:
build:
...

两个服务(应用程序和sidekiq(都有一个文件夹应用程序。我的问题是schedule.rb中的所有任务都运行两次(一次用于应用容器,另一次用于sidekiq容器(

有没有方法可以检查它是否是一个sidekiq容器,以不启动计划的作业?

(sidekiq通过命令启动:RAILS_ENV=production bundle exec sidekiq -L /my-app/log/sidekiq_production.log(

Cron作业不是从schedule.rb文件神奇地创建的。它们仅在运行时创建

whenever --update-crontab

或类似的。从Sidekiq容器中运行的脚本中删除此命令。

最新更新