Troubleshooting Custom Runtimes

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 does not follow symlinks when added by your source tree or your packaging system to the base image, so any source files outside of your applications directory that are referenced by symlinks in your source tree will not be copied into your application.