在symfony中运行cron作业

时间:2016-11-12 19:28:15

标签: symfony docker cron

我正在使用docker for symfony应用程序,我需要每分钟运行一个cron作业。所以基本上我有一个命令 my:command ,我通常这样运行: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

1 个答案:

答案 0 :(得分:1)

是你的码头工作者或外面的cronjob吗?如果它在你的外面应该检查已经安装了php。您可以运行命令whereis phpwhich php来了解php二进制文件的绝对路径。 然后放置app / console命令的路径。

如果您的cronjob位于docker容器内,则必须检查cron守护程序是否应作为进程运行。使用docker ps或进入容器并执行ps awwx。如果crond尚未运行,我建议你看看supervisord。使用此软件,您可以在一个docker容器中运行多个进程。

至少可以在外面配置cronjob,但是在容器内部执行命令。为此,您应该在crontab中预备docker exec命令。

希望它有所帮助。

干杯, 罗宾