Before you deploy a service to Cloud Run, you can develop it locally using a Cloud Run emulator.
Configuring your service for development
To run your service locally, specify your configuration as follows:
- Open the Command Palette (press
P) and then run the Run on Cloud Run Emulator command.
In the Run/Debug on Cloud Run Emulator dialog, set the specifications for your configuration.
Optional: Customizing your configuration
In addition to the settings above, you can specify advanced settings like a service account and environment variables, using the Advanced settings section.
The following environment variables are automatically added to the running containers:
|PORT||The port your HTTP server should listen on.||8080|
|K_SERVICE||The name of the Cloud Run service being run.||hello-world|
|K_REVISION||The name of the Cloud Run revision being run.||hello-world.1|
|K_CONFIGURATION||The name of the Cloud Run configuration that created the revision.||hello-world|
Running your service locally
- After you define your preferred settings, run your service by clicking Run.
Monitor the status of your deployment in the output window.
After deployment is complete, you can view your running service by opening the URL displayed in the output window.
To view verbose logs, switch to the detailed Cloud Run view in the output window.
After your session completes, additional contextual menu options are available to monitor your application and its resources using the Cloud Code status bar, including:
- Open Deployment Logs: Open the application logs of a specific deployment with the Cloud Code Logs Viewer
- Open Service URL: Open the application service URL of a specific service in a web browser
Turn on/off watch mode: Toggle watch mode for the current session. By default, Cloud Code continuously watches the file system for changes to your files, such as Kubernetes config or code, rebuilds the container(s), and redeploys the application to the cluster so that your edits are reflected in near real time.
To stop your deployment, you can click the Stop button in the action bar for your current deployment.
If your code includes potentially sensitive data like API keys, passwords, and certificates, it is recommended you store them as secrets. With Cloud Code, you can securely store these secrets in Secret Manager and programmatically fetch them when you need them. For a detailed look at how you can create and manage secrets with Cloud Code, refer to the Secret Manager guide.
Customizing an existing launch.json configuration
To configure how your service is run, you can customize your skaffold.yaml
as well as specify the following fields in your
- watch: Watches for changes in the workspace when in Run mode and reruns the service. Unless explicitly set to false, true by default.
- build: Specify the builder (Docker, buildpacks) to build your images with.
- image: Specify the name of the image you'd like to use.
- service: Specify the Cloud Run service you'd like to use.
- debug: Specify preferred debug settings such as remote path mapping to map a local path to a path on the remote container.