Viewing docs for Google Cloud v9.23.0
published on Thursday, May 7, 2026 by Pulumi
published on Thursday, May 7, 2026 by Pulumi
Docker Build and Push to GCR and Deploy to Google Cloud Run using separate projects
I want to use the Pulumi Google Cloud package (gcp) in my project.
## Provider details
- Package: gcp
- Version: v9.23.0
- Publisher: Pulumi
- Source: pulumi
- Repository: https://github.com/pulumi/pulumi-gcp
## Documentation
The Pulumi Cloud Registry API serves canonical, up-to-date docs for this package — including private packages and every published version. Send the "Accept: text/markdown" header for clean readable content, or "application/json" for structured data.
Start at the navigation tree, which cross-links to the readme, installation guide, and per-resource docs URL template:
- https://api.pulumi.com/api/registry/packages/pulumi/pulumi/gcp/versions/latest/nav
Returns a summary by default. The full tree can be hundreds of kB for large providers, so prefer targeted search: append "?q=<query>&depth=full" to filter by resource/function title or token (for example "?q=bucket&depth=full"). Only request the full nav without a query if you actually need to enumerate every resource.
Other endpoints:
- Overview and getting started: https://api.pulumi.com/api/registry/packages/pulumi/pulumi/gcp/versions/latest/readme
- Installation and configuration: https://api.pulumi.com/api/registry/packages/pulumi/pulumi/gcp/versions/latest/installation
- Per-resource/function docs: https://api.pulumi.com/api/registry/packages/pulumi/pulumi/gcp/versions/latest/docs/{token}?lang={lang}
Replace {token} with the percent-encoded token from the nav response (for example aws:s3/bucket:Bucket).
Replace {lang} with typescript, python, go, csharp, java, or yaml.
Fetch the installation endpoint above for the correct setup steps — install instructions vary between native providers, bridged Terraform providers, and component packages.
Help me get started using this provider. Show me a complete Pulumi program that provisions a common resource, including all necessary configuration and imports.
Viewing docs for Google Cloud v9.23.0
published on Thursday, May 7, 2026 by Pulumi
published on Thursday, May 7, 2026 by Pulumi
An example of building a custom Docker image and pushing it into a Google Cloud Container Registry and then in a separate project deploying that image with the Google Cloud Run service using TypeScript.
Note this is an adaptation of the gcp-ts-cloudrun example
Prerequisites
- Ensure you have the latest Node.js and NPM
- Install the Pulumi CLI
- Configure Pulumi to access your GCP account
- Install Docker
- Enable Docker to deploy to Google Container Registry with
gcloud auth configure-docker - Setup Docker auth with a JSON key to get image from GCR
Build and Push Docker Image
Navigate to the
docker-build-push-gcrdirectoryRestore NPM dependencies:
$ npm installCreate a new stack:
$ pulumi stack init devConfigure your GCP project and region:
$ pulumi config set gcp:project <projectname> $ pulumi config set gcp:region <region>Run
pulumi upto preview and deploy changes:$ pulumi up Previewing update (dev): ... Updating (dev): Type Name Status + pulumi:pulumi:Stack gcr-build-image-dev created + └─ docker:image:Image ruby-app created Outputs: digest: "gcr.io/velvety-rock-274215/ruby-app:latest-fee86d3d35fccf2ad4d86bbfcdd489acf7b1e4db0ebb8166378bd1fb0ca9cee6" Resources: + 2 created Duration: 16s
Deploy Cloud Run
Navigate to the
cloud-run-deploydirectoryRestore NPM dependencies:
$ npm installCreate a new stack:
$ pulumi stack init devConfigure your GCP project, region and docker config file:
$ pulumi config set gcp:project <projectname> $ pulumi config set gcp:region <region> $ pulumi config set docker-config-file <location of ~/.docker/config.json>Run
pulumi upto preview and deploy changes:$ pulumi up Previewing update (dev): Type Name Plan + pulumi:pulumi:Stack cloud-run-deploy-dev create + ├─ pulumi:providers:docker gcr create + ├─ docker:index:RemoteImage ruby-app-docker-image create + ├─ gcp:cloudrun:Service ruby create + └─ gcp:cloudrun:IamMember ruby-everyone create Resources: + 5 to create Do you want to perform this update? yes Updating (dev): Type Name Status + pulumi:pulumi:Stack cloud-run-deploy-dev created + ├─ pulumi:providers:docker gcr created + ├─ docker:index:RemoteImage ruby-app-docker-image created + ├─ gcp:cloudrun:Service ruby created + └─ gcp:cloudrun:IamMember ruby-everyone created Outputs: rubyUrl: "https://ruby-app-7a54c5f5e006d5cf33c2-zgms4nzdba-uc.a.run.app" Resources: + 5 created Duration: 23sCheck the deployed Cloud Run endpoint:
$ curl "$(pulumi stack output rubyUrl)" Hello Pulumi!Clean up your GCP and Pulumi resources (run in both projects):
$ pulumi destroy ... $ pulumi stack rm dev ...
Viewing docs for Google Cloud v9.23.0
published on Thursday, May 7, 2026 by Pulumi
published on Thursday, May 7, 2026 by Pulumi
