Laravel无法处理队列中的作业

时间:2017-10-07 08:50:49

标签: php bash laravel docker laravel-queue

对于初学者来说,这是我的Docker容器中的进程列表:

/var/www/html # ps aux
PID   USER     TIME   COMMAND
    1 root       0:00 {php-fpm.sh} /bin/sh /php-fpm.sh
    6 root       0:02 /usr/sbin/crond
    8 root       0:00 /sbin/syslogd -D -s 500
   10 root       1:31 php /var/www/html/artisan queue:work --queue=mailer --sleep=3 --tries=3
   11 root       0:00 /usr/bin/logger -t mailer
   12 root       0:24 php-fpm: master process (/usr/local/etc/php-fpm.conf)
   25 root       0:02 /usr/sbin/crond
   30 root       0:01 /sbin/syslogd -D -s 500
13505 www-data   6:20 php-fpm: pool www
21682 www-data   0:17 php-fpm: pool www
21837 root       0:00 /bin/sh
22078 www-data   0:00 php-fpm: pool www
22123 root       0:00 ps aux
31186 root       0:00 /bin/sh
31301 root       0:00 /bin/sh

这是我的容器的入口点:

#! /bin/sh

# Start cron daemon
/usr/sbin/crond

# Logger, max log file size 500Kb
/sbin/syslogd -D -s 500

( php /var/www/html/artisan queue:work \
    --queue=mailer \
    --sleep=3 --tries=3 2>&1 | /usr/bin/logger -t mailer & )

# Run PHP-FPM
php-fpm -F

问题是 php / var / www / html / artisan queue:work 不处理qeueu中的作业。

要实现这一点,我必须通过运行docker exec -it / bin / sh登录到容器,然后运行 php / var / www / html / artisan queue:work --queue = mailer - sleep = 3 --tries = 3 ,它运行得很好。

所以问题是错误的。

0 个答案:

没有答案