在Docker中运行Sidekiq - 处理Docker容器的终止?

时间:2015-06-23 05:11:34

标签: ruby-on-rails docker sidekiq

我正在使用Rails + Sidekiq + Docker。我打算在Docker容器中部署我的Sidekiq进程。我的工作时间很长,而且持续时间不可预测(基本上它正在对数据库执行长时间运行的查询 - 最长可达10-15分钟)

当我杀死我的docker容器时(作为新部署的一部分),我如何告诉Sidekiq优雅地停止以便不会中断现有的作业?

之前有没有人遇到类似的情况。如果是这样,你如何解决这个问题?

1 个答案:

答案 0 :(得分:3)

docker stop -t XX应该发送TERM信号告诉Sidekiq关机并等待XX秒。

您还希望使用sidekiq -t XX扩展Sidekiq的硬超时。