Azure-docs: Wrong info about the default port

Created on 31 May 2019  Â·  10Comments  Â·  Source: MicrosoftDocs/azure-docs

"The web server in your custom image may use a port other than 80. You tell Azure about the port that your custom uses by using the WEBSITES_PORT app setting. "

Well, my container uses port 80 and it doesn't work without explicitly specifying it in WEBSITES_PORT. According to the logs, it tries to ping my container on port 443 by default and then just fails:

2019-05-31 04:03:19.158 ERROR - Container xxx_1 for site xxx did not start within expected time limit. Elapsed time = 230.4403647 sec
2019-05-31 04:03:20.574 ERROR - Container xxx_1 didn't respond to HTTP pings on port: 443, failing site start. See container logs for debugging.

Explicitly setting WEBSITES_PORT = 80 instantly helped.


Document details

⚠ Do not edit this section. It is required for docs.microsoft.com ➟ GitHub issue linking.

Pri2 app-servicsvc cxp product-issue triaged

All 10 comments

@Leon99, Thanks for the feedback! We are taking a look into this and will get back to you soon.

@Leon99, Yes, the automatic port detection detects the port (default 80). Azure Load Balancer has a default idle timeout setting of approximately four minutes (230 seconds), so after that the requests timesout. When we start your container, we'll wait a while for it to start and initialize. We consider the startup to be successful once the container is running and once, we get a response to a ping so that we know it's ready to respond to HTTP traffic. We'll wait 230 seconds for that to happen. If we don't have a successful start within 230 seconds, we'll assume there's a problem and we'll stop the container.
Furthermore, some containers might need more time than that to start, so we allow you to increase that 230 second wait time up to a limit of 1800 seconds. To configure that, add an app setting called WEBSITES_CONTAINER_START_TIME_LIMIT and set it to the number of seconds you would like for us to wait for your container to start (up to a maximum of 1800). Having said that, if the issue still persists, Could you share the WebApp name directly here or indirectly for further investigation?

@Leon99, Since we have not heard back from you we will now proceed to close this thread. If there are further questions regarding this matter, please tag me in your reply. We will gladly reopen the issue and continue the discussion.

Hi @AjayKumar-MSFT, you've raised a support ticket for me some time ago, it was another problem with the same site - we use it as a test ball for switching to Linux/containers. Just in case - my subscription ID is 6939...1c21, site name is ...-cont. Thanks.
I suspect it may be another issue with using MSI+EasyAuth.

@Leon99, Thank you for sharing the details. We are checking on this further and will reach out you shortly.

Update: Working offline with the customer on this issue.

SirichaiLordsin, Your specific question is not very clear, could you please provide more details on the issue or open-up a new GitHub issue on the doc you want to share your feedback.

Will someone help me? I keep getting :( Application Error.

I can't eliminate the didn't respond to HTTP pings on port: 8080, failing site start error that crashes the whole thing!

  • I tried to use PORT and/or WEBSITES_PORT under appSettings, which is part of properties, under the resource type Microsoft.Web/sites. It didn't work.
  • I tried to create a .dockerfile indicating the port to use using the keyword EXPOSE. It didn't work.
  • I tried to increase the App Service plan from B1 to B3. It didn't work.
  • I tried to include the whole node_modules. It didn't work.
  • I tried to increase WEBSITES_CONTAINER_START_TIME_LIMIT with the max value 1800. It didn't work.
  • I tried to turn off http20Enabled and add minTlsVersion. Plus, I tried different versions of minTlsVersion. It didn't work.
  • I tried to indicate the version of nodeVersion and linuxFxVersion. It didn't work.
  • I tried to turn on and off autoHealEnabled. It didn't work.
  • I tried to add a startup.sh file that triggers the npm run start. It didn't work.
  • I tried to create a home folder and move things in and out. It didn't work.
  • I tried setting WEBSITES_WEBDEPLOY_USE_SCM to false. It didn't work.

I am running out of ideas of what to do to make this work.

Here is an example of the logs.
image

@ Alejandro, I see that you have tired several ways to fix the issue, thanks for the detailed response. Apologies for inconvenience.

If you haven't done this already, enable docker logs from under App Service Logs blade and then check.

To highlight further on container start-up process - When your site starts, we run your Docker image and create a Docker container. Your app runs inside of that container, and the file system contains only what is in the Docker image. If your Docker image doesn't install a particular component, it won't be there when your container starts. You can take charge of this by building your own custom image that will install this without manual intervention.

  1. Navigate to Azure Portal and to the App Service
  2. Click on Diagnose and Solve Problems blade > Best Practices
  3. Click on Best Practices for Availability, Performance or Best Practices for Optimal Configuration
  4. Our detectors would analyze your App Service and display the results

Will someone help me? I keep getting :( Application Error.

I can't eliminate the didn't respond to HTTP pings on port: 8080, failing site start error that crashes the whole thing!

* I tried to use `PORT` and/or `WEBSITES_PORT` under `appSettings`, which is part of `properties`, under the resource type `Microsoft.Web/sites`. It didn't work.

* I tried to create a `.dockerfile` indicating the port to use using the keyword `EXPOSE`. It didn't work.

* I tried to increase the App Service plan from B1 to B3. It didn't work.

* I tried to include the whole `node_modules`. It didn't work.

* I tried to increase `WEBSITES_CONTAINER_START_TIME_LIMIT` with the max value `1800`. It didn't work.

* I tried to turn off `http20Enabled` and add `minTlsVersion`. Plus, I tried different versions of `minTlsVersion`. It didn't work.

* I tried to indicate the version of `nodeVersion` and `linuxFxVersion`. It didn't work.

* I tried to turn on and off `autoHealEnabled`. It didn't work.

* I tried to add a `startup.sh file` that triggers the `npm run start`. It didn't work.

* I tried to create a `home` folder and move things in and out. It didn't work.

* I tried setting `WEBSITES_WEBDEPLOY_USE_SCM` to false. It didn't work.

I am running out of ideas of what to do to make this work.

Here is an example of the logs.
image

I found the issue to my problem. In siteConfig, the remoteDebuggingEnabled must be disabled.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

JamesDLD picture JamesDLD  Â·  3Comments

ianpowell2017 picture ianpowell2017  Â·  3Comments

behnam89 picture behnam89  Â·  3Comments

JeffLoo-ong picture JeffLoo-ong  Â·  3Comments

Ponant picture Ponant  Â·  3Comments