This guide shows how to prepare a web service to run in a container on Cloud Run for Anthos. It does not cover data migration.
Identify the port your code is listening on
Your service should listen for requests on a specific port. You must identify this port and configure Cloud Run for Anthos to send request to the same port.
This is the same port you would use when invoking your service on your local
machine. For example, if to test your code you open
localhost:3000, then set
the container port to
3000 in Cloud Run for Anthos.
Cloud Run for Anthos defaults to sending requests to
The value of the port to which requests are sent is always available in the
PORT environment variable. It is a best practice for your code to listen on
the value defined by the
PORT environment variable if possible.
Remove reliance on local filesystem for persistent storage
Check your application code for reliance on local filesystems, and replace it with file storage on Cloud Storage or data storage such as Firestore or Cloud SQL.
In order to wrap your service in a container, you should use a Dockerfile to
define the operating environment. Read more about customizing your
on the Developing your service
Tune for concurrency and memory limits
Learn about concurrency in Cloud Run for Anthos and how to optimize your services in development tips for tuning concurrency.
Make sure your memory limit is high enough for your application to run, including capacity for any temporary file storage your service requires.
Send logs to stdout, stderr, or /var/log
Cloud Run for Anthos automatically uses Google Cloud's operations suite to aggregate and review your logs, as described in the logging page.