How to deploy a container image to Cloud Run

Google Cloud TechAbout 4 min readAug 20, 2025Watch original
THE SUMMARYAI-generated

Key Concepts:

  • Google Cloud Run: A managed compute platform that enables you to run stateless containers invocable via HTTP requests.
  • Container Image: A lightweight, standalone, executable package of software that includes everything needed to run an application: code, runtime, system tools, system libraries, and settings.
  • nginx: A popular open-source web server.
  • Docker Hub: A container image registry.
  • IAM (Identity and Access Management): Controls who (authenticated) can do what (authorization) on Google Cloud resources.
  • Request-Based Billing: A pricing model where you pay for the resources consumed while your container instances are actively processing requests.
  • Idle Instances: Container instances that are not receiving any requests.
  • Cloud Load Balancer: A fully distributed, software-defined, managed service for traffic management.

Deploying a Container Image to Cloud Run

  1. Accessing Cloud Run: The demonstration begins in the Google Cloud Console, specifically within the Cloud Run section.
  2. Initiating Deployment: The user clicks "Deploy Container" and selects "Service" to start the deployment process.
  3. Selecting the Container Image: The user specifies the container image to deploy. In this case, the popular nginx image is chosen directly from Docker Hub.
  4. Service Configuration:
    • Service Name: The service is named "nginx" for simplicity.
    • Region Selection: The user selects the us-west2 region as the closest geographical location.
    • Authentication: IAM authentication is unchecked to create a public endpoint, making the service accessible without authentication.
  5. Pricing Options:
    • Request-Based Billing (Default): The user utilizes the default request-based billing model. This model charges for container instance time, including allocated CPU and memory, only when the instance is actively processing requests.
    • Idle Instance Cost: Cloud Run does not charge for idle instances, which are instances not receiving any requests. This is highlighted as a cost-efficient feature.
  6. Port Configuration: The user configures the port that Cloud Run sends requests to. For nginx, the default port 80 is specified, as nginx expects requests on this port.
  7. Creating the Service: The user clicks "Create" to initiate the deployment.
  8. Background Processes: Cloud Run pulls the specified nginx image, imports it, and creates the Cloud Run service.
  9. Revision and Instance Creation: Once the revision is created, Cloud Run starts a container instance and pings the configured port (80) to verify readiness.
  10. Verification: Upon successful deployment and readiness, checkboxes turn green, indicating a working nginx service.
  11. Accessing the Deployed Service: The user clicks the provided link to access the deployed nginx service. The "Welcome to nginx!" page confirms successful deployment.

Benefits of Cloud Run

  • Simplified Deployment: The demonstration highlights the ease and speed of deploying containers to Cloud Run, requiring only a few clicks.
  • Reduced Configuration Overhead: Cloud Run eliminates the need for manual configuration of aspects such as nginx setup, autoscaling, load balancing, and HTTPS endpoints.
  • Integration with Cloud Load Balancer: Cloud Run integrates with Cloud Load Balancer, providing configurability for advanced traffic management scenarios.

Notable Quotes:

  • "Google Cloud Run makes it easy to run your containerized applications." - Sara Ford
  • "With this billing type, you pay for container instance time, which includes the allocated CPU and memory. And with Cloud Run, there is no charge for idle instances." - Sara Ford
  • "Before Cloud Run, I might have had to spend time configuring nginx, autoscaling, load balancing, HTTPS endpoints, and so forth." - Sara Ford

Technical Terms:

  • Containerized Applications: Applications packaged with their dependencies into containers, ensuring consistency across different environments.
  • Stateless Containers: Containers that do not store persistent data; each request is handled independently.
  • HTTP Requests: Requests made over the Hypertext Transfer Protocol, the foundation of data communication on the web.
  • Autoscaling: Automatically adjusting the number of container instances based on traffic demand.
  • Load Balancing: Distributing incoming network traffic across multiple servers to prevent overload and ensure high availability.
  • HTTPS Endpoints: Secure endpoints that use the HTTPS protocol for encrypted communication.
  • Revision: A snapshot of the service's configuration at a specific point in time.

Logical Connections:

The video logically connects the initial problem of complex container deployment with the solution offered by Cloud Run. It demonstrates the step-by-step process of deploying a container, highlighting the ease of use and cost-effectiveness of the platform. The video also connects Cloud Run's features to the benefits they provide, such as reduced configuration overhead and integration with other Google Cloud services.

Synthesis/Conclusion:

Google Cloud Run simplifies the deployment of containerized applications by abstracting away the complexities of infrastructure management. The platform's request-based billing model and lack of charges for idle instances make it a cost-effective solution. The demonstration shows how easily a container image can be deployed and made accessible via a public endpoint, emphasizing the benefits of Cloud Run for developers seeking a streamlined deployment process. The video encourages viewers to explore the provided quickstarts for further learning.

AI summaries can miss context or contain errors. Check important details against the original video.

Go a little deeper.

Have a question about this video? Load its transcript to open the video chat.