描述:ubuntu+docker+laravel9,cron去调度laravel任务
使用 Laravel 的调度程序时,我们只需要向服务器添加一个 cron 配置项,该项每分钟运行一次 schedule:run 命令。如果你不知道如何向服务器添加 cron 配置项,请考虑使用 Laravel Forge 之类的服务来为你管理 cron 配置项:
crontab配置官方说明
: * * * * * cd /你的项目路径 && php artisan schedule:run >> /dev/null 2>&1**
根据个人实际环境配置
: 由于环境问题,artisan命令无法在外部执行,所以需要进入到容器,命令如下 ** * * * * docker exec -t php /bin/bash -c “cd /var/www/html/api && php artisan schedule:run” > /var/log/crontab/accounts.log 2>&1*
注意事项:如果我们使用docker exec -it php /bin/bash命令 那么cron执行会报错 the input device is not a TTY,这里不作过多解释,解决办法:删除 -it 问题解决