Как запускать задания cron внутри docker-контейнера php-fpm-alpine? - PullRequest
0 голосов
/ 28 декабря 2018

Привет, я не знаю, как я могу запустить задание cron внутри этого контейнера.

Я нашел это: Как запустить задание cron внутри докераконтейнер

Но это переопределяет CMD, я не знаю, как поддерживать php-fpm в работе

1 Ответ

0 голосов
/ 28 декабря 2018

Когда вам нужно запустить несколько процессов в вашем док-контейнере, решением будет использовать supervisord в качестве основной инструкции.Docker запустится и будет контролировать supervisord , который, в свою очередь, запустит другие ваши процессы.

Пример файла Docker:

FROM debian:9
...
CMD ["/usr/bin/supervisord", "-c", "/etc/supervisor/my.conf"]

Пример конфигурации Supervisord (/ etc / supervisor / my.conf):

[supervisord]
nodaemon=true

[program:cron]
command=/usr/sbin/crond -f -l 8
stdout_logfile=/dev/stdout
stderr_logfile=/dev/stderr
stdout_logfile_maxbytes=0
stderr_logfile_maxbytes=0
autorestart=true

[program:php-fpm]
command=docker-php-entrypoint php-fpm

Обратите внимание, что желательно настроить supervisord для вывода журналов в / dev / stdout и / dev / stderr , чтобы разрешить докеробрабатывать эти журналы.В противном случае вы рискуете замедлить работу контейнера по мере увеличения количества записей в файл.

...