7

我正在使用 laravel-echo-server 并且一切正常,如果我使用以下命令启动服务器:

laravel-echo-server start

我明白:

LARAVELECHOSERVER

版本 1.2.8

Starting server...

✔  Running at localhost on port 3001
✔  Channels are ready.
✔  Listening for http events...
✔  Listening for redis events...

Server ready!

但是如果我用 ctrl+c 关闭服务器就被杀死了!如果我使用这个命令,同样的事情:

laravel-echo-server start &

如果我断开 ssh 连接,服务器将停止工作!

如何在后台模式下启动?

谢谢!

4

2 回答 2

9

我推荐使用pm2工具来管理larval-echo-server服务。安装pm2后,您必须在 Laravel 项目中创建一个 json 文件,其内容如下:

回声-pm2.json

{
  "name": "echo",
  "script": "laravel-echo-server",
  "args": "start"
}

然后运行下一条命令在后台启动服务:

pm2 start echo-pm2.json

你可以使用pm2 monit命令进行实时监控或pm2 logs获取服务日志。

于 2019-07-15T14:37:27.440 回答
3

在 Linux 上安装主管。这是一本手册:https ://laravel.com/docs/5.4/queues#supervisor-configuration

这是我的主管配置文件:

[program:websocket-server]
process_name=%(program_name)s
directory=/var/www/example.de/public_html/
command=/usr/lib/node_modules/laravel-echo-server/bin/server.js start
autostart=true
autorestart=true
user=www-data
numprocs=1
redirect_stderr=true
stdout_logfile=/var/www/example.de/logs/websocket-server.log

现在您可以在后台启动服务器supervisorctl start websocket-server:*

于 2017-06-17T13:31:14.640 回答