在symfony中运行cron作业

我正在使用docker for may symfony应用程序,我需要每分钟运行一次cron作业。 所以基本上我有一个命令我的命令 ,我通常这样运行: app/console my:command我尝试了几个变化,但都没有成功。 所以我的问题是如何运行一个cron工作? 以下是我的一些尝试:

第一:

 * * * * * cd /usr/lib/myProject && app/console my:command >> /usr/lib/myProject/app/logs/log1.log 

第二:

 * * * * * /usr/lib/myProject/app/console my:command >> /usr/lib/myProject/app/logs/log1.log 

你的docker是你的cronjob吗? 如果在外面你应该检查,PHP已经安装。 你可以运行命令whereis phpwhich php来了解php二进制文件的绝对path。 然后你把app / console命令的path。

如果您的cronjob在Docker容器中,则必须检查cron守护进程是否应该作为进程运行。 使用docker ps或者进入你的容器并执行ps awwx 。 如果crond还没有运行,我build议你看看supervisord。 使用此软件,您可以在一个docker集装箱中运行多个stream程。

至lessposibility你可以configuration外部的cronjob,但执行容器内的命令。 为此,您应该在您的crontab中预备docker docker exec命令。

希望能帮助到你。

干杯,罗宾