首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Django crontab不工作于弹性豆柄

Django crontab不工作于弹性豆柄
EN

Stack Overflow用户
提问于 2017-08-26 09:10:35
回答 2查看 700关注 0票数 2

我的cron作业在本地主机上可以很好地工作,但是当我部署它们时,它们不会被添加。以下settings.py:

代码语言:javascript
运行
复制
CRONJOBS = [
('*/1 * * * *', 'push.cron.my_scheduled_job')

]在开发中,cron通过这样做完美地工作:

  1. python添加manage.py
  2. python运行2e847f370afca8feed daa55d5094d128

但是当我用.把它部署到服务器上时。cron作业不会自动添加。如何将crob作业添加到服务器?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-08-26 17:11:23

在本地主机上运行的cron作业与服务器无关。您将需要以与本地相同的方式单独运行它们。

代码语言:javascript
运行
复制
## I am assuming that you already activated your virtual env 

python manage.py crontab add #returns a hash
python manage.py crontab run "hash" # put the has here without quotes

您可以通过编写和运行某种bash脚本来实现自动化。

如果您想要一些自动化,我建议您使用芹菜而不是crontab。

票数 0
EN

Stack Overflow用户

发布于 2019-02-08 00:35:56

我只是设法让这件事起作用了。

首先,我把脚本写成了"Django自定义管理命令“。

然后我建立了一个SSH连接,它从目录"/home/ec2-user“开始,然后输入"crontab -e”来编辑crontab。

在crontab文件中,只需添加以下行(用自己的文件替换MY_CUSTOM_MANAGEMENT_COMMAND ):

          • 源/opt/ python /run/venv/bin/activate &python manage.py MY_CUSTOM_MANAGEMENT_COMMAND

那你就完了。

您的问题中没有提到,但是我想指出的是,我在一些著名的博客中看到过:您不需要一个工作层,crontab在web服务器层运行得很好。如果您有一些繁重的后台处理,请使用工作层。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45893817

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档