Python Django crontab在elastic beanstalk中不工作

Python Django crontab在elastic beanstalk中不工作,python,django,cron,amazon-elastic-beanstalk,Python,Django,Cron,Amazon Elastic Beanstalk,我的cron作业在localhost上运行良好,但在部署时没有添加它们。 下面的设置为.py: CRONJOBS = [ ('*/1 * * * *', 'push.cron.my_scheduled_job') ] 在开发过程中,cron通过以下方式完美工作: python manage.py crontab添加 python manage.py crontab运行2e847f370afca8feeddaa55d5094d128 但当我使用..将其部署到服务器时。。cron作业不会自动添加。

我的cron作业在localhost上运行良好,但在部署时没有添加它们。 下面的设置为.py:

CRONJOBS = [
('*/1 * * * *', 'push.cron.my_scheduled_job')
] 在开发过程中,cron通过以下方式完美工作:

  • python manage.py crontab添加
  • python manage.py crontab运行2e847f370afca8feeddaa55d5094d128

  • 但当我使用..将其部署到服务器时。。cron作业不会自动添加。如何将crob作业添加到服务器

    在本地主机上运行的cron作业与服务器无关。您将需要以与在本地应用程序中相同的方式分别运行它们

    ## 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而不是crontab。

    我刚刚设法让它工作起来

    首先,我将脚本编写为“Django自定义管理命令”

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

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

            • source/opt/python/run/venv/bin/activate&&python manage.py MY_CUSTOM_MANAGEMENT_命令
    那你就完了


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

    这看起来不像