Azure Web App on Linux: “Error: Container didn't respond to HTTP pings on port: 8080” - when using: “start”: “pm2 start server.js”

社会主义新天地 提交于 2020-05-27 05:39:46

问题


My App Service Linux instance crashes if my node app is using the start script: "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.

Container logs have nothing but the above error. If I use just: "start": "node server.js", the app starts just fine.

I understand that if the container doesn't respond via 8080 the container gets stopped, but I'm having process.env.PORT set as the port of my server so I can't figure out why the pm2 start script crashes the container.

I have a feeling that process.env.PORT is undefined if using the above start script because of some mixup in the process but can't find any way to debug it because after the container crashes I'm unable to ssh into it any more to inspect it.

I would really appreciate any suggestion, Thanks.


回答1:


Are we trying to ping on PORT 8080? The problem here is that port 8080 is not exposed, so when we attempt to ping the container, we aren't pinging on a port on which the container is listening.

There are a couple of ways to resolve this.

  1. Use the EXPOSE instruction in your Dockerfile to expose port 8080.
  2. Use the WEBSITES_PORT app setting with a value of "8080" to expose that port.

You can refer the below mentioned articles:

https://docs.microsoft.com/en-us/azure/devops/pipelines/tasks/deploy/azure-rm-web-app-deployment?view=azure-devops

https://blogs.msdn.microsoft.com/waws/2017/09/08/things-you-should-know-web-apps-and-linux/




回答2:


Try adding the application setting PORT with the value of whatever port your app is listening on.

Ref: https://github.com/MicrosoftDocs/azure-docs/issues/34451



来源:https://stackoverflow.com/questions/55688600/azure-web-app-on-linux-error-container-didnt-respond-to-http-pings-on-port

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!