2017-02-21 10 views
0

Я пытаюсь запустить команду symfony через cron, но теперь она выполняется никогда. Приложение работает в докере, и я не могу найти информацию, если мне нужно указать роли или что-то еще. Другие стандартные команды linux выполняются успешно, но похоже, что cron не хочет запускать приложение/консоль. Вот мой cronjob:Cronjob в symfony работает на docker

* * * * * /usr/local/bin/php /usr/lib/myApp/app/console myCommand --env=prod >> /usr/lib/myApp/testLog.txt 2>&1 

Кто-нибудь есть какие-либо предложения, как запустить Symfony команду в докер, используя хрон?

ответ

1

Философия Docker заключается в том, чтобы иметь один процесс в контейнере. Это означает, что у вас обычно нет системы init и, следовательно, никаких служб, запущенных внутри контейнера, например, нет. dbus или cron.

Есть способы создать собственное изображение Docker с помощью службы init-system/background. Изображения на основе Alpine часто используют S6.

Другим решением является Используйте хрон-сервис на хосте и переписать команду на что-то вроде docker exec <container_name> /usr/local/bin/php ...

Смежные вопросы