EC2(Beanstalk)crontab 未通过 .ebextensions 更新
Posted
技术标签:
【中文标题】EC2(Beanstalk)crontab 未通过 .ebextensions 更新【英文标题】:EC2 (Beanstalk) crontab not updating via .ebextensions 【发布时间】:2014-07-13 19:52:15 【问题描述】:我在 .extensions/site_cron.config 中创建了以下文件
container_commands:
01_remove_old_cron_jobs:
command: "crontab -r || exit 0"
02_cronjobs:
command: "cat .ebextensions/crontab | crontab"
leader_only: true
我的 .ebextensions/crontab 是:
0 23 * * * php /var/www/html/index.php cron publish_new
我从 Beanstalk 获取了我的日志快照并看到了这个:
2014-05-24 14:41:46,743 [DEBUG] Running command 01_remove_old_cron_jobs
2014-05-24 14:41:46,744 [DEBUG] Generating defaults for command 01_remove_old_cron_jobs
<<<
2014-05-24 14:41:46,857 [DEBUG] No test for command 01_remove_old_cron_jobs
2014-05-24 14:41:46,877 [INFO] Command 01_remove_old_cron_jobs succeeded
2014-05-24 14:41:46,877 [DEBUG] Command 01_remove_old_cron_jobs output:
2014-05-24 14:41:46,878 [DEBUG] Running command 02_cronjobs
2014-05-24 14:41:46,878 [DEBUG] Generating defaults for command 02_cronjobs
<<<
2014-05-24 14:41:46,989 [DEBUG] Running test for command 02_cronjobs
2014-05-24 14:41:47,005 [DEBUG] Test command output:
2014-05-24 14:41:47,006 [DEBUG] Test for command 02_cronjobs passed
2014-05-24 14:41:47,028 [INFO] Command 02_cronjobs succeeded
2014-05-24 14:41:47,029 [DEBUG] Command 02_cronjobs output:
2014-05-24 14:41:47,029 [DEBUG] No services specified
似乎一切正常,并且实例处于绿色状态。但是,我在crontab -e
或/var/www/html/.ebextensions
中没有看到任何内容——什么给出了?我如何知道我的 cron 作业已就位并准备就绪?
【问题讨论】:
【参考方案1】:我已经找到了我的 cron 工作。
我必须检查:sudo crontab -l
之前我用的是crontab -l
不完全确定为什么它显示为 sudo,但不显示为登录用户。我想我已经是root了。
无论如何,既然它显示在该 crontab 中,我将假设它们会按预期运行。
【讨论】:
【参考方案2】:由于某种原因,如果您将作业安装在根 crontab 中,它们不会运行。 它们必须在 ec2-user crontab 中,否则它们不会执行。
【讨论】:
以上是关于EC2(Beanstalk)crontab 未通过 .ebextensions 更新的主要内容,如果未能解决你的问题,请参考以下文章
Elastic Beanstalk 未创建 ssl.conf
使用 Elastic Beanstalk 创建时的 AWS EC2 .pem 证书