A docker image for working with queues being monitored by supervisor as recommended by laravel.
Running with redis you can configure your QUEUE_CONNECTION
environment variable to match your redis link. In our case the link is called redis
so the default value will be redis
.
The default queue name in laravel is called default
. So we configured the QUEUE_NAME
environment variable to this value.
If you want to use Laravel Horizon then you have to set the environment LARAVEL_HORIZON
to true
. By default it is false
.
Since version v4.1 is it possible to modify the php memory limit. The environment variable PHP_MEMORY_LIMIT
is by default set to 512
(MB). For unlimited memory usage just set it to -1
. The queue worker command will also be called with the memory limit given to this value to be consistent.
For Laravel Horizon you have to configure your memory limit in your horizon.php
configuration. The default php memory limit has to set within the container by setting PHP_MEMORY_LIMIT
as well.
php | docker image |
---|---|
7.0 | ipunktbs/laravel-queue-worker:php7.0-v1.0 |
7.1 | ipunktbs/laravel-queue-worker:php7.1-v2.0 |
7.2 | ipunktbs/laravel-queue-worker:php7.2-v3.0 |
7.3 | ipunktbs/laravel-queue-worker:php7.3-v4.0 - deprecated |
7.3 | ipunktbs/laravel-queue-worker:php7.3-v4.1 |
7.3 | ipunktbs/laravel-queue-worker:php7.3-v4.2 |
7.3 | ipunktbs/laravel-queue-worker:php7.3-v4.3 |
7.3 | ipunktbs/laravel-queue-worker:php7.3-v4.4 - recommended |
Added:
- pcntl extension
Added:
- amqp extension
Added:
- bcmath extension for php (to support Laravel Telescope as well)
- watchdog for supervisord to let the container restart when some of the programs died