我写了一些要每小时,每天和每周运行的django管理命令。我正在使用Elastic Beanstalk并创建了一个部署代码的工作实例。有人可以帮我如何使用弹性beantalk通过crontab运行django管理命令。谢谢
这是我的管理命令:
python manage.py command_name
[请帮助我在.ebextensions / django.config文件中为crontab编写container_command,它将按小时计划该命令。谢谢
有帮助吗?
在.ebextensions
中创建文件crontab.txt
# Set the cron to run with utf8 encoding
PYTHONIOENCODING=utf8
0 1 * * * root source /opt/python/current/env && nice /opt/python/current/app/manage.py command_name
# this file needs a blank space as the last line otherwise it will fail
这是一个crontab文件,它将每天凌晨1点运行command_name。您需要正确设置路径,具体取决于您的文件结构。
其中一个配置文件包括:
02_cron_job:
command: "cp .ebextensions/crontab.txt /etc/cron.d/my_cron_jobs && chmod 644 /etc/cron.d/my_cron_jobs"
leader_only: true
这将把您的cron文件复制到ec2实例上的正确位置,以便作业运行。