gpt4 book ai didi

ruby-on-rails - 如何通过 cron 运行 rake 任务?

转载 作者:数据小太阳 更新时间:2023-10-29 07:21:08 25 4
gpt4 key购买 nike

我有一个 rails 应用程序和一个 rake 任务,我将通过 cron 大约每小时执行一次。但问题是该任务使用 rails 环境和我的 rails 应用程序的某些类。如果我将它作为 ruby​​ 脚本运行,我将必须包括它使用的所有依赖项,我认为不可能以简单的方式正确地做到这一点。所以我必须将它作为 rake 任务运行,因为它会保留所有依赖项,对吗?那么如何从 cron 运行 rake 任务呢?

请注意,在没有必要的情况下,我不喜欢使用任何第三方解决方案,在这种情况下,我不想在任何时候使用 gem 等。

最佳答案

你可以在你的 crontab 中添加类似的东西

0 * * * * /bin/bash -l -c 'cd /path/to/your/project && bundle exec rake foo:bar >> log/cron.log 2>&1'

这将每小时运行一次 foo:bar 任务,并将 stdoutstderr 写入 log/cron.log.

请注意 rake 命令之前的 bundle exec
使用 bundler 确保您的任务将获取正确的环境。

要指定 RAILS_ENV 你可以这样做

... && RAILS_ENV=production bundle exec rake foo:bar

关于ruby-on-rails - 如何通过 cron 运行 rake 任务?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38138365/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com