Skip to main content

Google Cloud Run

Google Cloud Run example

This example lives in the pulumi/examples repository. Check out just this directory to use it:

Get started with this example
git clone --filter=blob:none --sparse https://github.com/pulumi/examples pulumi-examples
git -C pulumi-examples sparse-checkout set gcp-ts-cloudrun
cd pulumi-examples/gcp-ts-cloudrun

An example of deploying a custom Docker image into Google Cloud Run service using TypeScript. Our image builds a simple HelloWorld web application in Ruby. You may change it to any language and runtime that can run on Linux and serve HTTP traffic.

Prerequisites#

  1. Install Pulumi
  2. Configure GCP credentials
  3. Install Node.js
  4. Install Docker
  5. Enable Docker to deploy to Google Container Registry with gcloud auth configure-docker

Deploying the example#

  1. Create a new stack:

    Terminal window
    pulumi stack init dev
  2. Configure your GCP project and region:

    Terminal window
    pulumi config set gcp:project <projectname>
    pulumi config set gcp:region <region>
  3. Install dependencies:

    Terminal window
    npm install
  4. Deploy the stack:

    Terminal window
    pulumi up
    Previewing update (dev):
    ...
    Updating (dev):
    Type Name Status
    + pulumi:pulumi:Stack gcp-cloudrun-dev created
    + ├─ docker:image:Image ruby-app created
    + ├─ gcp:projects:Service EnableCloudRun created
    + ├─ gcp:cloudrun:Service hello created
    + ├─ gcp:cloudrun:Service ruby created
    + ├─ gcp:cloudrun:IamMember hello-everyone created
    + └─ gcp:cloudrun:IamMember ruby-everyone created
    Outputs:
    helloUrl: "https://hello-a28eea2-q1wszdxb2b-ew.a.run.app"
    rubyUrl : "https://ruby-420a973-q1wszdxb2b-ew.a.run.app"
    Resources:
    + 7 created
    Duration: 3m37s
  5. Check the deployed Cloud Run endpoint:

    Terminal window
    curl "$(pulumi stack output rubyUrl)"
    Hello Pulumi!

Cleaning up#

Once you’re finished experimenting, destroy your stack and remove it to avoid incurring any additional cost:

Terminal window
pulumi destroy
pulumi stack rm

Related

The infrastructure as code platform for any cloud.