Почему PM2 работает на одном сервере, а не на другом? - PullRequest
0 голосов
/ 10 января 2019

У нас есть два экземпляра нашего приложения Node-Express: один для разработки и один для производства. Мы внедряем менеджер процессов PM2 . Это для среды Windows Server 2012.

По какой-то непонятной причине PM2 (с pm2-windows-service) работал нормально при настройке в нашей среде разработки, но даже не запускал узел в нашей среде Prod. В чем может быть причина?

  • В файлах журнала ничего полезного не обнаружено
  • Если вы посмотрите на мой связанный вопрос , вы увидите, что PM2 выглядит как как запускающий узел, но не является (или мгновенно падает).
  • Все, что мы можем сделать вывод, это то, что между этими двумя серверами есть некоторые различия в настройках. Любая подсказка, какая разница в настройках может вызвать сбой PM2, как это?

Это связано с более конкретным вопросом У меня есть вопросы о том, что у нас есть реализация PM2.

Спасибо!

Ответы [ 2 ]

0 голосов
/ 14 января 2019

Хорошо, я получил ответ после публикации проблемы на странице вопросов pm2 github.

Поделитесь этим здесь на случай, если кто-то еще окажется в такой ситуации:

https://github.com/Unitech/pm2/issues/4113

(в основном pm2 3.2.5 появилась ошибка, вызывающая эту проблему в Windows. Моя QA-установка была 3.2.4. Проблема была решена путем возврата к 3.2.4. Простой процесс, см. Инструкции по ссылке выше.)

0 голосов
/ 10 января 2019

Это может быть не совсем проблема pm2, чуть больше npm. На сервере, где pm2 не работает, попробуйте эту команду в PowerShell:

Get-Command pm2

Возвращает ли верную версию (не 0.0.0)? Если нет, возникает проблема с установкой этого пакета, поэтому в качестве опции можно установить его вручную. Также мы задали знакомый вопрос в этом билете в прошлом месяце:

https://github.com/Unitech/pm2/issues/3964

Как описано в билете выше, вы можете попробовать проверить другой пакет npm со знакомыми проблемами:

npm install mocha -g

И это попытаться достичь мокко-кли

...