gcloud compute disks create <DISK_NAME...>

Create Compute Engine persistent disks

Arguments

NameDescription
DISK_NAMENames of the disks to create. For details on the naming convention for this resource, refer to: https://cloud.google.com/compute/docs/naming-resources

Options

NameDescription
--account <ACCOUNT>Google Cloud Platform user account to use for invocation. Overrides the default *core/account* property value for this command invocation
--billing-project <BILLING_PROJECT>The Google Cloud Platform project that will be charged quota for operations performed in gcloud. If you need to operate on one project, but need quota against a different project, you can use this flag to specify the billing project. If both `billing/quota_project` and `--billing-project` are specified, `--billing-project` takes precedence. Run `$ gcloud config set --help` to see more information about `billing/quota_project`
--configuration <CONFIGURATION>The configuration to use for this command invocation. For more information on how to use configurations, run: `gcloud topic configurations`. You can also use the CLOUDSDK_ACTIVE_CONFIG_NAME environment variable to set the equivalent of this flag for a terminal session
--csek-key-file <FILE>Path to a Customer-Supplied Encryption Key (CSEK) key file that maps Compute Engine resources to user managed keys to be used when creating, mounting, or taking snapshots of disks. + If you pass `-` as value of the flag, the CSEK is read from stdin. See https://cloud.google.com/compute/docs/disks/customer-supplied-encryption for more details
--description <DESCRIPTION>An optional, textual description for the disks being created
--flags-file <YAML_FILE>A YAML or JSON file that specifies a *--flag*:*value* dictionary. Useful for specifying complex flag values with special characters that work with any command interpreter. Additionally, each *--flags-file* arg is replaced by its constituent flags. See $ gcloud topic flags-file for more information
--flatten <KEY>Flatten _name_[] output resource slices in _KEY_ into separate records for each item in each slice. Multiple keys and slices may be specified. This also flattens keys for *--format* and *--filter*. For example, *--flatten=abc.def* flattens *abc.def[].ghi* references to *abc.def.ghi*. A resource record containing *abc.def[]* with N elements will expand to N records in the flattened output. This flag interacts with other flags that are applied in this order: *--flatten*, *--sort-by*, *--filter*, *--limit*
--format <FORMAT>Set the format for printing command output resources. The default is a command-specific human-friendly output format. The supported formats are: `config`, `csv`, `default`, `diff`, `disable`, `flattened`, `get`, `json`, `list`, `multi`, `none`, `object`, `table`, `text`, `value`, `yaml`. For more details run $ gcloud topic formats
--guest-os-features <GUEST_OS_FEATURE>This parameter enables one or more features for VM instances that use the image for their boot disks. See https://cloud.google.com/compute/docs/images/create-delete-deprecate-private-images#guest-os-features for descriptions of the supported features. _GUEST_OS_FEATURE_ must be one of: *GVNIC*, *MULTI_IP_SUBNET*, *SEV_CAPABLE*, *UEFI_COMPATIBLE*, *VIRTIO_SCSI_MULTIQUEUE*, *WINDOWS*
--helpDisplay detailed help
--image <IMAGE>An image to apply to the disks being created. When using this option, the size of the disks must be at least as large as the image size. Use ``--size'' to adjust the size of the disks. + This flag is mutually exclusive with ``--source-snapshot'' and ``--image-family''
--image-family <IMAGE_FAMILY>The image family for the operating system that the boot disk will be initialized with. Compute Engine offers multiple Linux distributions, some of which are available as both regular and Shielded VM images. When a family is specified instead of an image, the latest non-deprecated image associated with that family is used. It is best practice to use --image-family when the latest version of an image is needed
--image-project <IMAGE_PROJECT>The Google Cloud project against which all image and image family references will be resolved. It is best practice to define image-project. A full list of available projects can be generated by running `gcloud projects list`. * If specifying one of our public images, image-project must be provided. * If there are several of the same image-family value in multiple projects, image-project must be specified to clarify the image to be used. * If not specified and either image or image-family is provided, the current default project is used
--impersonate-service-account <SERVICE_ACCOUNT_EMAIL>For this gcloud invocation, all API requests will be made as the given service account instead of the currently selected account. This is done without needing to create, download, and activate a key for the account. In order to perform operations as the service account, your currently selected account must have an IAM role that includes the iam.serviceAccounts.getAccessToken permission for the service account. The roles/iam.serviceAccountTokenCreator role has this permission or you may create a custom role. Overrides the default *auth/impersonate_service_account* property value for this command invocation
--kms-key <KMS_KEY>ID of the key or fully qualified identifier for the key
--kms-keyring <KMS_KEYRING>The KMS keyring of the key
--kms-location <KMS_LOCATION>The Cloud location for the key
--kms-project <KMS_PROJECT>The Cloud project for the key
--labels <KEY=VALUE>List of label KEY=VALUE pairs to add. + Keys must start with a lowercase character and contain only hyphens (`-`), underscores (```_```), lowercase characters, and numbers. Values must contain only hyphens (`-`), underscores (```_```), lowercase characters, and numbers
--licenses <LICENSE>A list of URIs to license resources. The provided licenses will be added onto the created disks to indicate the licensing and billing policies
--log-httpLog all HTTP server requests and responses to stderr. Overrides the default *core/log_http* property value for this command invocation
--project <PROJECT_ID>The Google Cloud Platform project ID to use for this invocation. If omitted, then the current project is assumed; the current project can be listed using `gcloud config list --format='text(core.project)'` and can be set using `gcloud config set project PROJECTID`. + `--project` and its fallback `core/project` property play two roles in the invocation. It specifies the project of the resource to operate on. It also specifies the project for API enablement check, quota, and billing. To specify a different project for quota and billing, use `--billing-project` or `billing/quota_project` property
--quietDisable all interactive prompts when running gcloud commands. If input is required, defaults will be used, or an error will be raised. Overrides the default core/disable_prompts property value for this command invocation. This is equivalent to setting the environment variable `CLOUDSDK_CORE_DISABLE_PROMPTS` to 1
--region <REGION>Region of the disks to create. If not specified, you may be prompted to select a region. + To avoid prompting when this flag is omitted, you can set the ``compute/region'' property: + $ gcloud config set compute/region REGION + A list of regions can be fetched by running: + $ gcloud compute regions list + To unset the property, run: + $ gcloud config unset compute/region + Alternatively, the region can be stored in the environment variable ``CLOUDSDK_COMPUTE_REGION''
--replica-zones <ZONE>A comma-separated list of exactly 2 zones that a regional disk will be replicated to. Required when creating regional disk. The zones must be in the same region as specified in the `--region` flag. See available zones with `gcloud compute zones list`
--require-csek-key-createRefuse to create resources not protected by a user managed key in the key file when --csek-key-file is given. This behavior is enabled by default to prevent incorrect gcloud invocations from accidentally creating resources with no user managed key. Disabling the check allows creation of some resources without a matching Customer-Supplied Encryption Key in the supplied --csek-key-file. See https://cloud.google.com/compute/docs/disks/customer-supplied-encryption for more details. Enabled by default, use *--no-require-csek-key-create* to disable
--resource-policies <RESOURCE_POLICY>A list of resource policy names to be added to the disk. The policies must exist in the same region as the disk
--size <SIZE>Size of the disks. The value must be a whole number followed by a size unit of ``GB'' for gigabyte, or ``TB'' for terabyte. If no size unit is specified, GB is assumed. For example, ``10GB'' will produce 10 gigabyte disks. Disk size must be a multiple of 1 GB. Limit your boot disk size to 2TB to account for MBR partition table limitations. If disk size is not specified, the default size of 500GB for pd-standard disks, 100GB for pd-balanced disks, and 100GB for pd-ssd disks will be used. For details about disk size limits, refer to: https://cloud.google.com/compute/docs/disks
--source-disk <SOURCE_DISK>Source disk used to create the disks. It is safe to delete a source disk after a disk has been created from the source disk. To get a list of disks in your current project, run `gcloud compute disks list`. This flag is mutually exclusive with *--image* and *--source-snapshot*. + When using this option, the size of the disks must be at least as large as the source disk size. Use *--size* to adjust the size of the disks. + Source disk must be in the same zone/region as the disk to be created
--source-snapshot <SOURCE_SNAPSHOT>Source snapshot used to create the disks. It is safe to delete a snapshot after a disk has been created from the snapshot. In such cases, the disks will no longer reference the deleted snapshot. To get a list of snapshots in your current project, run `gcloud compute snapshots list`. A snapshot from an existing disk can be created using the `gcloud compute disks snapshot` command. This flag is mutually exclusive with *--image*. + When using this option, the size of the disks must be at least as large as the snapshot size. Use *--size* to adjust the size of the disks
--trace-token <TRACE_TOKEN>Token used to route traces of service requests for investigation of issues. Overrides the default *core/trace_token* property value for this command invocation
--type <TYPE>Specifies the type of disk to create. To get a list of available disk types, run `gcloud compute disk-types list`. The default disk type is pd-standard
--user-output-enabledPrint user intended output to the console. Overrides the default *core/user_output_enabled* property value for this command invocation. Use *--no-user-output-enabled* to disable
--verbosity <VERBOSITY>Override the default verbosity for this command. Overrides the default *core/verbosity* property value for this command invocation. _VERBOSITY_ must be one of: *debug*, *info*, *warning*, *error*, *critical*, *none*
--zone <ZONE>Zone of the disks to create. If not specified and the ``compute/zone'' property isn't set, you may be prompted to select a zone. + To avoid prompting when this flag is omitted, you can set the ``compute/zone'' property: + $ gcloud config set compute/zone ZONE + A list of zones can be fetched by running: + $ gcloud compute zones list + To unset the property, run: + $ gcloud config unset compute/zone + Alternatively, the zone can be stored in the environment variable ``CLOUDSDK_COMPUTE_ZONE''