2021-09-13T15:41:15: PM2 log: App [kafka:1] starting in -cluster mode- 2021-09-13T15:41:15: PM2 log: App name:kafka id:2 disconnected 2021-09-13T15:41:15: PM2 log: App [kafka:2] exited with code [0] via signal [SIGINT] 2021-09-13T15:41:15: PM2 log: App [kafka:2] starting in -cluster mode- 2021-09-13T15:41:15: PM2 log: App [kafka:1] online 2021-09-13T15:41:15: PM2 log: App [kafka:2] online /bin/bash:1 ELF ^ SyntaxError: Invalid or unexpected token
Docker中启动使用 CMD["pm2-runtime","process.json"].
配置文件大概长这个样子
{
"apps" : [
{
"name": "kafka",
"script": "node main.js --NODE_ENV=test",
"log_date_format" : "YYYY-MM-DD HH:mm:ss",
"log_file" : "/home/logs/log.log",
"error_file" : "/home/logs/err.log",
"out_file" : "/home/logs/out.log",
"instances": 3,
"exec_mode": "cluster"
}
]
}
在Docker中启动

在Docker环境下,尝试使用PM2启动多个Kafka实例时遇到错误,日志显示应用频繁退出并重新启动。问题源于配置文件中的`exec_mode`设置,删除该设置后,应用能正常以进程阻塞的前台模式运行,避免了后台运行导致的错误。一些在线资源关于PM2配置的误解,如认为`instances`参数仅在cluster模式下有效,实际上在fork模式下同样有效。
最低0.47元/天 解锁文章

1136





