Назад | Перейти на главную страницу

Веб-приложение Azure (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 осмотреть его.

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

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

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