Azure Web App (Linux): "Ошибка: контейнер не отвечает на HTTP-запросы на порт 8080" - при использовании "start": "pm2 start server.js"

Мой экземпляр службы приложений Linux аварийно завершает работу, если приложение моего узла использует сценарий запуска: "start": "pm2 start server.js":

2019-04-15 11:36:34.432 ERROR - Container crime-digest__6ea5_0 for site crime-digest__6ea5 has exited, failing site start
2019-04-15 11:36:34.489 ERROR - Container crime-digest__6ea5_0 didn't respond to HTTP pings on port: 8080, failing site start. See container logs for debugging.

Журналы контейнера не имеют ничего, кроме вышеуказанной ошибки. Если я использую только: "start": "node server.js", приложение запускается просто отлично.

Я понимаю, что если контейнер не отвечает через 8080, контейнер останавливается, но у меня process.env.PORT установить в качестве порта моего сервера, поэтому я не могу понять, почему сценарий запуска pm2 приводит к сбою контейнера.

У меня есть ощущение, что process.env.PORT не определено, если используется вышеуказанный стартовый скрипт из-за некоторой путаницы в процессе, но я не могу найти какой-либо способ его отладки, потому что после сбоя контейнера я больше не могу войти в него ssh, чтобы проверить его.

Буду очень признателен за любые предложения, спасибо.

0 ответов

Попробуйте добавить параметр приложения PORT со значением порта, который прослушивает ваше приложение.

Ссылка: https://github.com/MicrosoftDocs/azure-docs/issues/34451

Другие вопросы по тегам