gcloud compute

Linux Windows

The Google Cloud CLI lets you manage your Compute Engine resources, using thegcloud compute command group.gcloud compute is an alternative to using theCompute Engine API.

The gcloud CLI is part of theGoogle Cloud CLI and is a unifiedcommand-line tool that includes features like statement autocompletion,in-place updating, command-line help, human-readable andmachine-parsable output formats, and integration with Google Cloud CLI.

Note: Looking for reference pages forgcloud compute commands? Try thecommand-line--help function. For example, to get help about instancecreation, usegcloud compute instances create --help. You can see allcommand-line documentation atGoogle Cloud CLI reference.

If you have never used Compute Engine, get started with either theLinux quickstart ortheWindows quickstart.

Before you begin

Default properties

When you create a virtual machine instance, Compute Engine configures a VMusing default properties from themetadata server. You cancheck your VM's default properties by running the following command:

gcloud compute project-info describe --projectPROJECT_ID

ReplacePROJECT_ID with your project ID.

Default project

If you set a default project when you setup and initialize the Google Cloud CLI,allgcloud compute commands use that project ID by default.

You can override the default project ID by using either of the following methods:

  • Run eachgcloud compute command with the--project flag
  • Set theCLOUDSDK_CORE_PROJECT environment variable

    Linux and macOS

    Use theexport command to set the project environment variable.

    export CLOUDSDK_CORE_PROJECT=PROJECT_ID

    ReplacePROJECT_ID with the project ID of the projectthat you want to use as default.

    Unsetting project environment variables

    If you need to unset your project environment variables, use the followingunset commands:

    unset CLOUDSDK_CORE_PROJECT

    Windows

    Use theset command to set the project environment variable.

    set CLOUDSDK_CORE_PROJECT=PROJECT_ID

    ReplacePROJECT_ID with the project ID of the projectthat you want to use as default.

    Unsetting project environment variables

    If you need to unset your project environment variables, use the followingcommand:

    set CLOUDSDK_CORE_PROJECT=

If you do not set a default project or environment variable, you must include a--project flag in eachgcloud compute command that you run.

Default region and zone

Somegcloud compute commands require--region or--zone flags.Instead of specifying these flags each time you run commands, you can set adefault region and zone for your project. If you don't set a default region orzone and you run a region- or zone-dependent command, the Google Cloud CLI mightprompt you to provide a--region or--zone flag, or return an error.

You can set the default region and zone in three ways:

  • In the metadata server.The default region and zone set in the metadata server are applied to yourlocal client when you rungcloud init.
  • In your local client.The default region and zone set in your local client override the defaultregion and zone set in the metadata server.
  • In environment variables.The default region and zone set in environment variables override the defaultregion and zone set in your local client and in the metadata server.

You canoverride the default region and zone in themetadata server, in your local client, or in environment variables, by providing--region and--zone flags when you run commands.

View default region and zone

To view your default region and zone, run the followingcommands:

gcloud config get-value compute/region
gcloud config get-value compute/zone

If the output is(unset), no default region or zone is set.

View available regions and zones

You can view a list of regions and zones by running the following commands:

gcloud compute regions list
gcloud compute zones list

Set default region and zone in the metadata server

The default region and zone in the metadata server apply to allconfigurations in your project. To set the default region andzone in the metadata server, do the following:

  1. Set the default region and zone:

    gcloud compute project-info add-metadata \   --metadata google-compute-default-region=REGION,google-compute-default-zone=ZONE

    For example:

    gcloud compute project-info add-metadata \   --metadata google-compute-default-region=europe-west1,google-compute-default-zone=europe-west1-b
  2. Initialize the change in your local client:

    gcloud init

You can override the default region and zone set in the metadata server bysetting the default region and zone in your local client, setting the defaultregion and zone in environment variables, or by including the--zone or--region flag in your commands.

Note: There are no restrictions on which zone or regions you can set for yourdefault properties. For example, it is possible to set a default zone outsideof the default region.

Unset default region and zone in the metadata server

To unset the default region and zone in the metadata server, do the following:

  1. Unset metadata:

    gcloud compute project-info remove-metadata \   --keys=google-compute-default-region,google-compute-default-zone
  2. Initialize the change in your local client:

    gcloud init

Set default region and zone in your local client

The default region and zone set in your local client override the defaultregion and zone set in the metadata server.

To set the default region and zone in your local client, run the followingcommands:

gcloud config set compute/regionREGION
gcloud config set compute/zoneZONE

Unset default region and zone in your local client

To unset the default region or zone in your local client, run the followingcommands:

gcloud config unset compute/zone
gcloud config unset compute/region

You can override the default region and zone set in your local client by settingthe default region and zone in environment variables, or by including the--zone or--region flag in your commands.

Set default region and zone in environment variables

The default region and zone set in environment variables override the defaultregion and zone set in your local client and in the metadata server.

Linux and macOS

Use theexport command to set the region and zone variables.

export CLOUDSDK_COMPUTE_REGION=REGION
export CLOUDSDK_COMPUTE_ZONE=ZONE

To make these environment variables permanent, include these commands inyour~/.bashrc file and restart your terminal.

Windows

Use theset command to set the region and zone variables.

set CLOUDSDK_COMPUTE_REGION=REGION
set CLOUDSDK_COMPUTE_ZONE=ZONE

You can override environment variables by including the--zone or--regionflag in your commands.

Unset default region and zone in environment variables

Use the following commands to unset the default region and zone in environmentvariables.

Linux and macOS

To unset your region and zone environment variables, use the followingunset commands:

unset CLOUDSDK_COMPUTE_REGION
unset CLOUDSDK_COMPUTE_ZONE

Windows

To unset your region and zone environment variables, use the followingcommands:

set CLOUDSDK_COMPUTE_REGION=
set CLOUDSDK_COMPUTE_ZONE=

Override default zone with flags

Use the--zone flag to override the default zoneset in the metadata server, your local client, and environment variables.

For example:

gcloud compute instances create example-instance \    --zone=ZONE

Configurations

gcloud topic configurations arean advanced feature that you can use to influence the behavior of thegcloud CLI. For most users, using default configurations issufficient.

Configurations might be useful for users who:

  • Work with multiple projects. You can create a separate configuration for eachproject.
  • Use multiple accounts. For example, a user account and a service account.
  • Perform a variety of independent tasks (work on an App Engine app in oneproject, administer a Compute Engine cluster in zone us-central-1a,manage the network configurations for region asia-east-1, etc.)

To switch between configurations, run the following command:

gcloud config configurations activateCONFIGURATION_NAME

For more information about managing configurations, seegcloud config configurations.

What's next?

Except as otherwise noted, the content of this page is licensed under theCreative Commons Attribution 4.0 License, and code samples are licensed under theApache 2.0 License. For details, see theGoogle Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.

Last updated 2026-02-19 UTC.