簡體   English   中英

RAILS 6:如何在 crontab 中運行 rails 任務?

[英]RAILS 6 : How to run rails tasks in crontab?

我想運行由 cron(crontab 條目)啟動的 rails 任務。 但我總是收到無法找到 rails 命令的錯誤。

/bin/sh: rails: No such file or directory

所以我嘗試的與 .profile 或 .bashrs 包含的內容相同:

source "$HOME/.rvm/scripts/rvm"
export PATH="$PATH:$HOME/.rvm/bin"

它不知道需要導出哪些變量,或者之前需要執行哪些程序/工具/子命令,按照什么順序,先執行命令XYZ然后導出GEM___變量1 2 3,然后再執行另一個子命令,然后檢查通過命令 ABC 但不是當工具 rvm list 返回字符串不等於 RVM_string_1 ....

嗨,你可以使用,只要創業板這一點。 請按照以下步驟操作:

第 1 步:將每當 gem 添加到您的 Gemfile 中

# Gemfile

gem 'whenever', '~> 1.0'

第 2 步:運行bundle install來安裝這個 gem。

第 3 步:運行wheneverize . 這將為您創建一個初始的config/schedule.rb文件(只要 config 文件夾已經存在於您的項目中)。

第 4 步:打開新創建的config/schedule.rb並編寫您的調度程序任務。

# config/schedule.rb
# here `fetch_user_meetings:sync` this is one task in my case.
# please replace this with your task.

every :hour do
  rake "fetch_user_meetings:sync", output: {
    error: 'log/fetch_user_meetings_sync_error.log',
    standard: 'log/fetch_user_meetings_sync_access.log'
  }
end

第 5 步: whenever運行。 此命令將以實際的 cron 格式輸出生成的計划的預覽,並使用 crontab 附加您的作業。 每當您修改config/scheduler.rb ,請運行此命令。 這將更新您的 cron 作業。

注意:有很多選項可以設置您的調度程序作業。 請遵循此文檔

快樂編碼:-)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM