无法重启rails使用cron在系统重启时延迟作业

时间:2016-10-21 15:35:39

标签: ruby-on-rails cron delayed-job

我正在使用Ubuntu 14.04.4 LTS

crontab的:

SHELL=/bin/bash
@reboot ~/Projects/MyAPI/startworkers.sh;

启动脚本:

# /Projects/MyAPI/startworkers.sh

#!/bin/bash
source /home/server-linux/.bashrc

cd ~/Projects/LucyAPI

# Start background workers
bin/delayed_job --pool=tracking:2 --pool=emailverify:6 start

我预计重启后会有6个延迟的作业在运行。然而,他们都没有开始。但是,如果我手动执行start.sh,一切都按预期工作。

我做错了什么?

1 个答案:

答案 0 :(得分:0)

我认为您可能需要/ bin / bash作为crontab的一部分以及用户主目录的绝对路径。 Crontab示例:

@reboot /bin/bash -l -c '/home/your_user_name/Projects/MyAPI/startworkers.sh'

我还强烈建议使用whatever gem来处理你的crontab。你可以在Whenever Gem

找到它