Как автоматизировать выполнение обработчика очереди Laravel в контейнере Docker?Php

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 Как автоматизировать выполнение обработчика очереди Laravel в контейнере Docker?

Сообщение Anonymous »

Я хочу запустить композицию докера и не запускать вручную очередь php artisan:work для запуска моего работника. Я создал 2 сервиса: первый — мой php fpm, а второй — мой сервис очереди, который имеет одно и то же изображение и тот же объем.

Код: Выделить всё

  app:
build:
context: php
container_name: laravel_app
volumes:
- ./laravel:/var/www/html
networks:
- laravel

queue:
build:
context: php
volumes:
- ./laravel:/var/www/html
command: ['/bin/sh', '-c', 'php artisan queue:work']
depends_on:
- redis
- app
Служба работает, но не получает никаких заданий, даже если я запускаю вручную внутри очереди контейнера Artisan: работа, у меня есть «INFO Обработка заданий из очереди [по умолчанию]». но я не получаю никакой работы. Однако, когда я вручную выполняю ту же команду внутри контейнера приложения, она работает, и они имеют одинаковый объем.
Проблема заключается в соединении с Redis, когда у меня есть очередь выполнения службы очереди: у меня есть работа. это сообщение об ошибке в моем laravel.log:

Код: Выделить всё

    [2024-09-04 19:40:48] local.ERROR: php_network_getaddresses: getaddrinfo for redis failed: Name or service not known {"exception":"[object] (RedisException(code: 0): php_network_getaddresses: getaddrinfo for red
is failed: Name or service not known at /var/www/html/vendor/laravel/framework/src/Illuminate/Redis/Connectors/PhpRedisConnector.php:159)
моя конфигурация Redis находится в моем файле .env, который находится в папке laravel: REDIS_HOST=redis REDIS_PASSWORD=null REDIS_PORT=6379

Подробнее здесь: https://stackoverflow.com/questions/789 ... -container
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»