Cronjob Homestead不工作

时间:2015-08-21 13:15:55

标签: ssh cron command schedule homestead

我已经创建了一个发送自动电子邮件的命令。当我执行homestead ssh并运行php artisan emails.send时,会在mailtrap.io帐户中收到一封电子邮件。

我已将此代码添加到kernel.php

$schedule->command('emails:send')->everyFiveMinutes();

我把它放在一个5分钟的间隔,只是为了更容易快速测试它。 我已经进入了Homestead并进行了

php /home/vagrant/Code/soeptime/artisan schedule:run 1>> /dev/null    2>&1

然后我exit家园,我做了homestead provision

但是,日志中没有任何内容,我仍然没有收到电子邮件,宅基地现在运行超过15分钟。

2 个答案:

答案 0 :(得分:6)

您需要手动编辑crontab:

首先:

 crontab -e

然后添加

* * * * * php /home/vagrant/Code/soeptime/artisan schedule:run

答案 1 :(得分:0)

来自Laravel docs

  

Laravel提供了一种方便的方法,可以通过调度来调度Cron作业   每分钟运行一次schedule:run个Artisan命令。的   schedule:run命令将检查您在   App\Console\Kernel类来确定应运行的作业。

     

如果您想为Homestead运行schedule:run命令   网站,则可以在定义网站时将schedule选项设置为true

sites:
   - map: homestead.test
     to: /home/vagrant/code/Laravel/public
     schedule: true 
  

该站点的Cron作业将在虚拟机的/etc/cron.d文件夹中定义。