locked
Increase Web App for Linux Container health timeout RRS feed

  • Question

  • Good Evening,

    I am deploying the bitnami/prestashop:latest container to Azure Web Apps for Linux using Docker Compose. The app runs as it should, however, during setup, the container is stopped with the following log:

    2020-04-24 16:41:54.795 INFO  - Pulling image from Docker hub: bitnami/prestashop:latest
    2020-04-24 16:41:54.975 INFO  - latest Pulling from bitnami/prestashop
    2020-04-24 16:41:54.975 INFO  -  Digest: sha256:e9b855aacd98f030a5eb5da1bb67d85826f45de93a22c46d10a32dd926a406b4
    2020-04-24 16:41:54.975 INFO  -  Status: Image is up to date for bitnami/prestashop:latest
    2020-04-24 16:41:54.980 INFO  - Pull Image successful, Time taken: 0 Minutes and 0 Seconds
    2020-04-24 16:41:55.048 INFO  - Starting container for site
    2020-04-24 16:41:55.049 INFO  - docker run .... [I omitted this for privacy reasons]
    2020-04-24 16:42:42.765 INFO  - Started multi-container app
    2020-04-24 16:42:42.767 INFO  - Initiating warmup request to container ____ for site ____
    2020-04-24 16:42:42.768 INFO  - Container ____ for site ____ initialized successfully and is ready to serve requests.
    2020-04-24T16:41:58.112422153Z 
    2020-04-24T16:41:58.113523956Z Welcome to the Bitnami prestashop container
    2020-04-24T16:41:58.158369413Z Subscribe to project updates by watching https://github.com/bitnami/bitnami-docker-prestashop
    2020-04-24T16:41:58.158918215Z Submit issues and feature requests at https://github.com/bitnami/bitnami-docker-prestashop/issues
    2020-04-24T16:41:58.159232316Z Send us your feedback at containers@bitnami.com
    2020-04-24T16:41:58.159518117Z 
    2020-04-24T16:42:08.422158445Z nami    INFO  Initializing apache
    2020-04-24T16:42:08.608163795Z nami    INFO  apache successfully initialized
    2020-04-24T16:42:17.713547687Z nami    INFO  Initializing php
    2020-04-24T16:42:17.857312289Z nami    INFO  php successfully initialized
    2020-04-24T16:42:27.757340561Z nami    INFO  Initializing mysql-client
    2020-04-24T16:42:27.865075237Z nami    INFO  mysql-client successfully initialized
    2020-04-24T16:42:40.440013656Z nami    INFO  Initializing prestashop
    2020-04-24T16:42:43.016056554Z prestas INFO  Configuring webserver...
    2020-04-24T16:42:43.962865361Z prestas INFO  Configuring PHP settings...
    2020-04-24T16:42:44.588998548Z mysql-c INFO  Trying to connect to MySQL server
    2020-04-24T16:42:44.647265552Z mysql-c INFO  Found MySQL server listening at ____.mysql.database.azure.com:3306
    2020-04-24T16:42:44.971537885Z mysql-c INFO  MySQL server listening and working at ____.mysql.database.azure.com:3306
    2020-04-24T16:42:45.001331589Z prestas INFO  Configuring PrestaShop...
    2020-04-24T16:44:20  No new trace in the past 1 min(s).
    2020-04-24T16:45:20  No new trace in the past 2 min(s).
    2020-04-24T16:46:20  No new trace in the past 3 min(s).
    2020-04-24T16:47:20  No new trace in the past 4 min(s).
    2020-04-24T16:48:20  No new trace in the past 5 min(s).
    2020-04-24T16:49:20  No new trace in the past 6 min(s).
    2020-04-24T16:50:20  No new trace in the past 7 min(s).
    2020-04-24 16:50:32.785 ERROR - Container for ____ site ____ is unhealthy, Stopping site.
    2020-04-24 16:50:32.798 INFO  - Stoping site ____ because it is not healthy.
    2020-04-24T16:50:28.672683616Z Error executing 'postInstallation': PHP Warning:  Error while sending QUERY packet. PID=114 in /opt/bitnami/prestashop/vendor/doctrine/dbal/lib/Doctrine/DBAL/Driver/PDOStatement.php on line 105

    The container is always killed 7 minutes after no new activity happens. I believe that this could be a timeout in some kind of health checking service.

    Does anyone have any idea on how to solve this?

    Thanks,

    Felipe

    Friday, April 24, 2020 4:53 PM

All replies

  • Hi,

    I added the Application Variable WEBSITES_CONTAINER_START_TIME_LIMIT = 1800, and still no luck. The container is still being killed after 7 minutes. Any ideas?

    Friday, April 24, 2020 10:45 PM
  • Thanks for asking question! Could you please confirm if your container is responding to an HTTP ping as in order to consider a container to be successfully started, the container must start and must respond to an HTTP ping. If the container starts but does not respond to a ping, this will eventually log an event in the Docker log saying that it didn't start.

    There are a couple of ways to resolve this.

    1. Use the EXPOSE instruction in your Dockerfile to expose port 3000.

    2. Use the WEBSITES_PORT app setting with a value of "3000" to expose that port.

    Also, while using a multi-container deployment with either Docker Compose or Kubernetes, all containers specified in your configuration file must start successfully in order for the deployment to succeed. If one of your containers fails to start, all of them will fail.

    You may refer to below links for more details on this:

    https://docs.microsoft.com/en-gb/archive/blogs/waws/things-you-should-know-web-apps-and-linux#multi-containers

    https://docs.microsoft.com/en-gb/archive/blogs/waws/things-you-should-know-web-apps-and-linux#troubleshooting

     https://docs.microsoft.com/en-gb/archive/blogs/waws/things-you-should-know-web-apps-and-linux#best-practices

    ---------------------------------------------------------------------------------------------------------------------------------------------------------

    We're migrating from MSDN to Microsoft Q&A as our new forums and Azure App Service has already made the move!  In future, you can ask and look for the discussion for Azure App Service related questions here:   https://docs.microsoft.com/answers/topics/azure-webapps.html

    We are actively working to onboard remaining Azure services on Microsoft Q&A. We will make a public announcement once complete. Want to Learn more about new platform: Microsoft Q&A Getting Started


    Monday, April 27, 2020 8:02 AM
  • Hi Sneha, thanks for your attention!

    As the container is not allowed to start I cannot ping port 80. Nevertheless, this is a Bitnami Certified container so it should be working fine...

    As I am working with a docker-compose file I do not have the EXPOSE function, however I do have the port forwarding setup:

    version'2'
    services:
      prestashop:
        image'bitnami/prestashop:latest'
        ports:
          - '80:80'
        volumes:
          - ${WEBAPP_STORAGE_HOME}/site/wwwroot:/var/www/html

    Please note that the environment variables are set in the Azure Web App Configuration pane...

    Any ideas on what may be the root cause of this problem?

    Thanks,

    Felipe

    Monday, April 27, 2020 1:53 PM