使用crontab在弹性beantalk工作者实例上运行django管理命令

问题描述 投票:0回答:1

我写了一些要每小时,每天和每周运行的django管理命令。我正在使用Elastic Beanstalk并创建了一个部署代码的工作实例。有人可以帮我如何使用弹性beantalk通过crontab运行django管理命令。谢谢

这是我的管理命令:

python manage.py command_name

[请帮助我在.ebextensions / django.config文件中为crontab编写container_command,它将按小时计划该命令。谢谢

有帮助吗?

django amazon-web-services cron amazon-elastic-beanstalk django-management-command
1个回答
0
投票

.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实例上的正确位置,以便作业运行。

© www.soinside.com 2019 - 2024. All rights reserved.