Use operating system images to create boot disks for your instances. You can use one of the following image types:
- Public images are provided and maintained by Google, open source communities, and third-party vendors. By default, all Google Cloud projects have access to these images and can use them to create instances.
- Custom images are available only to your Cloud project. You can create a custom image from boot disks and other images. Then, use the custom image to create an instance.
You can use most public images at no additional cost, but there are some premium images that do add additional cost to your instances. Custom images that you import to Compute Engine add no cost to your instances, but do incur an image storage charge while you keep your custom image in your project.
Some images are capable of running containers on Compute Engine.
To view the source image for a VM, see Viewing source image.Note: VPC networks have a default maximum transmission unit (MTU) of
1460bytes. However, the network MTU can be set to
1500bytes. See Maximum transmission unit for background on network MTUs.
Compute Engine offers many preconfigured public images that have compatible Linux or Windows operating systems. Use these operating system images to create and start instances. Compute Engine uses your selected image to create a persistent boot disk for each instance. By default, the boot disk for an instance is the same size as the image that you selected. If your instance requires a larger persistent boot disk than the image size, resize the boot disk.
List of public images available on Compute Engine
You can see the full list of
public images with their image names, versions numbers, and image sizes, by
using the Google Cloud Console or the
gcloud command-line tool. Google updates
public images regularly, or when a patch for a critical impact common
vulnerability and exposure (CVE) is available.
In the Google Cloud Console, go to the Images page.
gcloud compute images list
Compute Engine provides public images with 64-bit versions of the following operating systems. For more information about each OS, including how each OS is customized to run on Compute Engine, see Operating system details.
Operating system details
To view a detailed list of public images, see Operating system details.
Operating system lifecycle and support policy
Support for Compute Engine–provided public OS images is subject to the lifecycle of the respective OS. Unless otherwise noted, Google usually publishes updated images on a monthly schedule. Published image updates include security updates and other updates installed for operating system versions that are in the mainstream support stage of their lifecycle.
When an OS version enters extended lifecycle stages, we don't provide monthly updated images. Previously published images are marked as deprecated. Images marked as deprecated are available for use but availability of security updates is subject to availability from the distribution or operating system vendor (for example, Microsoft, Red Hat, Canonical) or the corresponding open source community (for example, Debian).
We generally do not backport new features to these versions in the extended lifecycle stage or past the extended lifecycle.
A custom image is a boot disk image that you own and control access to. Use custom images for the following tasks:
Create an image from the boot disks of your existing Compute Engine instances. Then use that image to create new boot disks for your instances. This process lets you to create new instances that are preconfigured with the apps that you need without having to configure a public image from scratch.
Copy one image to another image by using either the
gcloudtool or the API. Use the same process that you use to create an image, but specify another image as the image source. You can also create an image from a custom image in a different project.
Guest operating system features
Some guest operating system features are available only on certain images. For example, multiqueue SCSI is enabled only on some public images.
If you need to enable these features on your custom images, specify one or more guest operating system features when you create a custom image.
Image families help you manage images in your project by
grouping related images together, so that you can roll forward and
roll back between specific image versions. An image family always points to the
latest version of an image that is not deprecated. Most public images are
grouped into an image family. For example, the
debian-9 image family in the
debian-cloud project always points to the most recent
Debian 9 image.
Custom image families
If you regularly update your custom images with newer configurations and software, you can group those images into a custom image family. The image family always points to the most recent image in that family, so your instance templates and scripts can use that image without having to update references to a specific image version.
Also, because the image family never points to a deprecated image, you can roll the image family back to a previous image version by deprecating the most recent image in that family.
For more information, see Setting image versions in an image family.
For best practices recommendations when working with image families, see Image families best practices.
Community supported images
Community-supported images are not directly supported by Compute Engine. It is up to the project community to ensure that images work with Compute Engine features and that security updates are maintained. Community-supported images are provided as-is by the project communities that build and maintain them.
Debian is a free operating system offered by the Debian
The Debian testing
image is provided on a best effort basis for development and testing. To list
Debian testing images, use the following
gcloud compute images list --project debian-cloud-testing --no-standard-images
is a free Linux-based operating system sponsored by SUSE. openSUSE images are
available in the
opensuse-cloud project. To list openSUSE images, use the
gcloud compute images list --project opensuse-cloud --no-standard-images
FreeBSD is a free operating system maintained by the FreeBSD
FreeBSD images are available in the
freebsd-org-cloud-dev project. To list
FreeBSD images, use the following
gcloud compute images list --project freebsd-org-cloud-dev --no-standard-images
- Read Image management best practices.
- Create and start an instance.
- Read about Compute Engine instances.
- Create a custom image.
- Build an image from scratch.