Notice: Over the next few months, we're reorganizing the App Engine documentation site to make it easier to find content and better align with the rest of Google Cloud products. The same content will be available, but the navigation will now match the rest of the Cloud products. If you have feedback or questions as you navigate the site, click Send Feedback.

Troubleshooting custom runtimes

Stay organized with collections Save and categorize content based on your preferences.
Issue Solutions
When starting my application I see a 503 error. Is your container listening for HTTP requests on port 8080? It should be---HTTP requests are routed to this port on your container.

Is your application responding to health check handlers? A well formed application should always respond to health checks. Make sure your application can respond to these requests or disable health checking in your app.yaml file.
Building my application takes a long time. This can be caused by sub-optimal layering in your Dockerfile. When your Dockerfile is built, a layered caching system is applied that rebuilds those layers that have changed, and any subsequent layers.

We recommended that your Dockerfile be structured so that frequently changing layers are built last, so that the previously built layers can remain cached during changes. You can read more about Dockerfile syntax and best practices on the Docker user guide.
Some files are not included in my application. docker build does not respect symlinks, so make sure you are not relying on symlinks in your application directory.