Cloud Run: Bringing serverless to containers

406
steren

This post is by Steren Giannini, Google Cloud Run Product Manager

Developers love serverless. With serverless, you can focus on code, deploy it, and let the platform take care of the rest—all while only paying for exactly what you use. But traditional serverless solutions can limit what programming languages you can use, or require you to organize your code around functions.

At Google Cloud Next 2019, we launched Cloud Run, a serverless compute platform that lets you run any stateless request-driven container on a fully managed environment. In other words, with Cloud Run, you can take an app—any stateless app—containerize it, and Cloud Run will provision it, scale it up and down, all the way to zero!

Check out how easy it is to get started and deploy your first container to the fully managed version of Cloud Run:

Cloud Run is unique among serverless platforms, and brings a number of benefits:

  • Do less work with a fully managed solution: With Cloud Run, you can forget about provisioning or managing infrastructure—it does that for you. Cloud Run automatically and quickly scales up or down based on your incoming traffic, and even scales down to zero. In addition, each Cloud Run service gets a stable and secure HTTPS endpoint, and you can easily add your own custom domain for which we automatically provision an SSL certificate. And if you need an easy way to serve static content or cache responses, Cloud Run integrates with Firebase Hosting.
  • Pay exactly for what you use: Cloud Run charges you for the resources you use only when your containers are processing requests or events, billed to the nearest 100 milliseconds.
  • Serve web traffic, or process Pub/Sub events: Run publicly accessible web services or APIs, or securely push Pub/Sub events to private Cloud Run microservices.
  • Leverage the power of containers: Containers have become an industry standard for packaging and deploying code, and let you write your code in your favorite language, with whatever framework or binary library that works for you. If you’re not familiar with containers, don't be scared; Cloud Run includes official base images for all the most popular languages, and there are examples of Dockerfiles in the documentation.
  • Enjoy the portability that comes with Knative: Cloud Run implements the Knative serving API, an open-source project to run serverless workloads on top of Kubernetes. That means you can deploy Cloud Run services anywhere Kubernetes runs. And if you need more control over your services (like access to GPU or more memory), you can also deploy these serverless containers in your own GKE cluster instead of using the fully managed environment.

Cloud SQL support

With one configuration change, you can now securely and privately connect your Cloud Run services to Cloud SQL instances. Read more in the documentation.

Metrics at a glance

As Cloud Run developers, you have been able to benefit from out-of-the-box integration with Stackdriver Logging and Monitoring. But you do not always need the full power of Stackdriver tools. Starting today, the Cloud Run user interface features several key performance indicators, such as:

  • Comparing the average number of requests per second in the Cloud Run service list
  • Observing request counts, request latencies, CPU and Memory allocation in a dedicated tab of the Cloud Run service view

New regions

Initially offered only in the U.S., we’ve also seen great adoption of Cloud Run among developers in other parts of the world. That’s why we are very happy to announce that we will start Cloud Run's regional expansion within the next few weeks, starting by opening new regions in Europe and Asia.

Learn more

Take our quickstart to deploy your first container to Cloud Run in seconds. For a deep dive on Cloud Run's features and characteristics, check out my session at Google Cloud Next 2019:

Steren Giannini
Tools mentioned in article