为什么我收到此错误 laravel-worker: ERROR (no such group)

Why I get this error laravel-worker: ERROR (no such group)

我按照官方 Laravel 文档 Centos 7.[=14 中使用 supervisor 在后台启动队列=]

但是 当我 运行 这个命令 sudo supervisorctl start laravel-worker:* 我得到这个错误 laravel-worker: ERROR (no such group)

文档https://laravel.com/docs/5.5/queues#supervisor-configuration

我对其进行了测试并创建了一个完全没有主管配置的新服务器。这些是我获得它的步骤 运行:

# 1. create the config file, see below for content
vi /etc/supervisor/conf.d/laravel-worker.conf

# 2. Reload the daemon's configuration files
supervisorctl reread
> laravel-worker: available

# 3. Reload config and add/remove as necessary
supervisorctl update
> laravel-worker: added process group

# 4. Start all processes of the group "laravel-worker"
supervisorctl start laravel-worker:*

# 5. Get status for all processes of the group "laravel-worker"
supervisorctl status laravel-worker:*
> laravel-worker:laravel-worker_00   RUNNING   pid 23758, uptime 0:00:16
> laravel-worker:laravel-worker_01   RUNNING   pid 23759, uptime 0:00:16

# 6. After a change in php sources you have to restart the queue, since queue:work does run as daemon
php artisan queue:restart
> Broadcasting queue restart signal.

/etc/supervisor/conf.d/laravel-worker.conf

[program:laravel-worker]
process_name=%(program_name)s_%(process_num)02d
command=php /var/www/artisan queue:work --sleep=3 --tries=2
autostart=true
autorestart=true
user=www-data
numprocs=2
redirect_stderr=true
stdout_logfile=/var/www/storage/logs/supervisor_queue-work.log

确保配置文件的顶部是正确的。示例:

[program:laravel-worker]

以下将导致您的问题:

[program: laravel-worker]
[laravel-worker]

干杯

我在基于云的 vps 上遇到了同样的问题。请检查 supervisord.conf 文件的底部。

你可以在

上找到它
nano /etc/supervisord.conf

您应该在配置文件中携带 [includes] 部分。如果该部分如上所示。

[include]
files = supervisord.d/*.ini

将文件参数扩展名改为 .conf

[include]
files = supervisord.d/*.conf

否则 supervisor 找不到 laravel-worker 配置。

查看配置文件中的进程名称。 我的文件是这样的

[program:omni-delivery-dev-server.config]
...

一直这样

[program:omni-delivery-dev-server]
...

在工人姓名周围加上引号 sudo supervisorctl start 'laravel-worker:*'

如果你有 centos8 找到并检查 supervisor.conf 。最后你可能会发现

[include]
files = supervisord.d/*.ini

所以不用担心将 your-file.conf 重命名为 your-file.ini 并再次尝试这些命令

supervisorctl reread

如果您看到变化,那么这就是成功。

supervisorctl update
supervisorctl start laravel-worker:*

注意:如果您收到一些 supervisorctl start laravel-worker:* 消息 尝试在

中添加引号
supervisorctl start 'laravel-worker:*'