您可以从源磁盘、映像、快照或 Cloud Storage 中存储的映像创建自定义映像,然后使用这些映像创建虚拟机 (VM) 实例。如果您创建并修改了一个永久性启动磁盘或特定映像,使其达到了特定的状态并需要保存该状态以用于创建虚拟机,则最适合使用这种方式。
此外,您也可以使用虚拟磁盘导入工具从现有系统将启动磁盘映像导入 Compute Engine,并将其添加到您的自定义映像列表中。
准备工作
- 阅读映像文档。
-
如果您尚未设置身份验证,请进行设置。身份验证是通过其进行身份验证以访问 Google Cloud 服务和 API 的过程。如需从本地开发环境运行代码或示例,您可以选择以下任一选项向 Compute Engine 进行身份验证:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
IMAGE_NAME:您的映像的名称。
PROJECT_ID:映像所属的项目 ID。
停止虚拟机,以便其关闭并停止将任何数据写入永久性磁盘。
如果在创建映像之前无法停止虚拟机,请尽量减少磁盘的写入量并同步文件系统。为了尽可能减少对永久性磁盘的写入,请按照以下步骤操作:
- 暂停将数据写入该永久性磁盘的应用或操作系统进程。
- 如有必要,刷新写入磁盘的应用。例如,MySQL 设有
FLUSH
语句。其他应用可能有类似的进程。 - 阻止应用写入永久性磁盘。
- 运行
sudo sync
。
在 Google Cloud 控制台中,转到虚拟机实例页面。
点击您用作映像创建来源的虚拟机的名称。
此时将显示虚拟机实例详情页面。
点击修改。
在启动磁盘部分,确保为删除规则选中保留磁盘选项。
点击保存。
VM_NAME
:虚拟机实例的名称。SOURCE_DISK
:要通过其创建映像的磁盘的名称。PROJECT_ID
:来源虚拟机所属的项目 ID。ZONE
:来源虚拟机所在的可用区。VM_NAME
:来源虚拟机的名称。SOURCE_DISK
:要通过其创建映像的磁盘的设备名称。- 永久性磁盘,即使该磁盘已挂接到虚拟机。
- 永久性磁盘的快照
- 您项目中的另一个映像
- 另一个项目分享的映像
- Cloud Storage 中的压缩 RAW 映像
在 Google Cloud 控制台中,前往创建映像页面。
指定映像的名称。
指定您要根据其创建映像的来源。可以是 Cloud Storage 中的永久性磁盘、快照、其他映像或 disk.raw 文件。
如果您从挂接到正在运行的虚拟机的磁盘来创建映像,请勾选保持实例运行,以确认您要在虚拟机保持运行的状态下创建映像。您可以在创建映像之前准备虚拟机。
在基于来源磁盘位置(默认)下拉列表中,指定映像的存储位置。例如,指定
us
可将映像存储在us
多区域中,或指定us-central1
可将其存储在us-central1
区域中。如果您未选择位置,Compute Engine 会将映像存储在最靠近映像源位置的多区域中。可选:指定您的映像的属性。
指定加密密钥。您可以选择 Google 拥有且 Google 管理的密钥、Cloud Key Management Service (Cloud KMS) 密钥或客户提供的加密密钥 (CSEK)。如果未指定加密密钥,则系统会使用 Google 拥有且 Google 管理的密钥对映像进行加密。
点击创建来创建映像。
IMAGE_NAME
:新映像的名称SOURCE_DISK
:要从中创建映像的磁盘。ZONE
:磁盘所在的可用区。IMAGE_FAMILY
:可选:用于指定此映像所属的映像系列的标志。LOCATION
:可选:用于指定在其中存储此映像的单区域或多区域的标志。例如,指定us
可将映像存储在us
多区域中,或指定us-central1
可将其存储在us-central1
区域中。如果您未选择位置,Compute Engine 会将映像存储在最接近映像来源位置的多区域中。IMAGE_NAME
:新映像的名称。SOURCE_IMAGE
:要从中创建新映像的映像。IMAGE_PROJECT
:可选:来源映像所在的项目。如果您想复制另一个项目中的映像,可使用此参数。IMAGE_FAMILY
:可选:此新映像所属的映像系列。LOCATION
:可选:允许您指定在其中存储映像的单区域或多区域。例如,指定us
可将映像存储在us
多区域中,或指定us-central1
可将其存储在us-central1
区域中。如果您未选择位置,Compute Engine 会将映像存储在最靠近映像源位置的多区域中。IMAGE_NAME
:新映像的名称SOURCE_SNAPSHOT
:要根据其创建映像的快照LOCATION
:可选:用于指定在其中存储此映像的单区域或多区域的标志。例如,指定us
可将映像存储在us
多区域中,或指定us-central1
可将其存储在us-central1
区域中。如果您未选择位置,Compute Engine 会将映像存储在最接近映像来源位置的多区域中。PROJECT_ID
:映像所属的项目 ID。IMAGE_NAME
:您要创建的新映像的名称。ZONE
:来源磁盘所在的可用区。SOURCE_DISK
:要从中创建映像的磁盘。LOCATION
:可选:映像的存储位置。例如,指定us
可将映像存储在us
多区域中,或指定us-central1
可将其存储在us-central1
区域中。如果您未选择位置,Compute Engine 会将映像存储在最靠近映像源位置的多区域中。PROJECT_ID
:映像所属的项目。IMAGE_NAME
:您要创建的新映像的名称。SOURCE_IMAGE
:要从中创建映像的映像。LOCATION
:可选:映像的存储位置。例如,指定us
可将映像存储在us
多区域中,或指定us-central1
可将其存储在us-central1
区域中。如果您未选择位置,Compute Engine 会将映像存储在最靠近映像源位置的多区域中。PROJECT_ID
:映像所属的项目。IMAGE_NAME
:您要创建的新映像的名称。SOURCE_PROJECT_ID
:可选:快照所在的项目。您必须有权访问该项目中的快照资源。SOURCE_SNAPSHOT
:要从中创建映像的快照。LOCATION
:可选:映像的存储位置。例如,指定us
可将映像存储在us
多区域中,或指定us-central1
可将其存储在us-central1
区域中。如果您未选择位置,Compute Engine 会将映像存储在最靠近映像源位置的多区域中。IMAGE_NAME
:新映像的名称SOURCE_IMAGE
:新映像所要依据的来源映像IMAGE_PROJECT
:可选:包含来源映像的项目使用此参数从其他项目中复制映像。
FEATURES
:用于为根据映像创建的虚拟机启用功能的客机操作系统标记如需添加多个值,请使用逗号来分隔值。设置为以下一个或多个值:
-
VIRTIO_SCSI_MULTIQUEUE
。在本地 SSD 设备上使用以替代 NVMe。如需详细了解支持 SCSI 的映像,请参阅选择接口。对于 Linux 映像,您可以在内核版本为 3.17 或更高版本的映像的本地 SSD 设备上启用多队列 SCSI。对于 Windows 映像,您可以在具有 1.2 版 Compute Engine Windows 驱动程序的映像的本地 SSD 设备上启用多队列 SCSI。
-
WINDOWS
。将 Windows Server 自定义启动映像标记为 Windows 映像。 -
MULTI_IP_SUBNET
。使用/32
以外的网络掩码配置接口。如需详细了解多个网络接口及其具体工作方式,请参阅 多个网络接口概览和示例。 -
UEFI_COMPATIBLE
。使用 UEFI 固件和以下 安全强化型虚拟机功能启动:- 安全启动:默认处于停用状态
- 虚拟可信平台模块 (vTPM):默认处于启用状态
- 完整性监控:默认处于启用状态
-
GVNIC
。支持更高的网络带宽,即 50 Gbps 到 100 Gbps 的速度。如需了解详情,请参阅 使用 Google 虚拟 NIC。 -
IDPF
。支持 Intel Infrastructure Data Path Function (IDPF) 网络接口。 -
SEV_CAPABLE
或SEV_SNP_CAPABLE
。如果您希望在支持 AMD 安全加密虚拟化 (SEV) 或 AMD 安全加密虚拟化-安全嵌套分页 (SEV-SNP) 的 机密虚拟机实例上使用您的映像,请使用这些标记。如需检查您的内核是否支持 AMD SEV 或 AMD SEV-SNP,请参阅 Linux 内核详情。 -
SEV_LIVE_MIGRATABLE_V2
。如果您想在支持 AMD SEV 上的 实时迁移的 机密虚拟机实例上使用映像,请使用此标记。如需检查您的内核是否支持实时迁移,请参阅 Linux 内核详情。 -
TDX_CAPABLE
。如果您想在支持 Intel Trust Domain Extensions (TDX) 的 机密虚拟机实例上使用您的映像,请使用此标记。如需检查您的内核是否支持 Intel TDX,请参阅 Linux 内核详情。 -
SUSPEND_RESUME_COMPATIBLE
。支持在虚拟机上暂停和恢复。如需了解详情,请参阅操作系统兼容性。
-
LOCATION
:可选:用于存储映像的单区域或多区域例如,指定
us
可将映像存储在us
多区域中,或指定us-central1
可将映像存储在us-central1
区域中。如果您未选择位置,Compute Engine 会将映像存储在最靠近映像源位置的多区域中。PROJECT_ID
:要在其中创建新映像的项目的 IDIMAGE_NAME
:新映像的名称IMAGE_PROJECT
:可选:包含来源映像的项目使用此参数从其他项目中复制映像。
SOURCE_IMAGE
:新映像所要依据的来源映像LOCATION
:可选:用于存储映像的单区域或多区域例如,指定
us
可将映像存储在us
多区域中,或指定us-central1
可将映像存储在us-central1
区域中。如果您未选择位置,Compute Engine 会将映像存储在最靠近映像源位置的多区域中。FEATURES
:用于为根据映像创建的虚拟机启用功能的客机操作系统标记如需添加多个值,请使用逗号来分隔值。设置为以下一个或多个值:
-
VIRTIO_SCSI_MULTIQUEUE
。在本地 SSD 设备上使用以替代 NVMe。如需详细了解支持 SCSI 的映像,请参阅选择接口。对于 Linux 映像,您可以在内核版本为 3.17 或更高版本的映像的本地 SSD 设备上启用多队列 SCSI。对于 Windows 映像,您可以在具有 1.2 版 Compute Engine Windows 驱动程序的映像的本地 SSD 设备上启用多队列 SCSI。
-
WINDOWS
。将 Windows Server 自定义启动映像标记为 Windows 映像。 -
MULTI_IP_SUBNET
。使用/32
以外的网络掩码配置接口。如需详细了解多个网络接口及其具体工作方式,请参阅 多个网络接口概览和示例。 -
UEFI_COMPATIBLE
。使用 UEFI 固件和以下 安全强化型虚拟机功能启动:- 安全启动:默认处于停用状态
- 虚拟可信平台模块 (vTPM):默认处于启用状态
- 完整性监控:默认处于启用状态
-
GVNIC
。支持更高的网络带宽,即 50 Gbps 到 100 Gbps 的速度。如需了解详情,请参阅 使用 Google 虚拟 NIC。 -
IDPF
。支持 Intel Infrastructure Data Path Function (IDPF) 网络接口。 -
SEV_CAPABLE
或SEV_SNP_CAPABLE
。如果您希望在支持 AMD 安全加密虚拟化 (SEV) 或 AMD 安全加密虚拟化-安全嵌套分页 (SEV-SNP) 的 机密虚拟机实例上使用您的映像,请使用这些标记。如需检查您的内核是否支持 AMD SEV 或 AMD SEV-SNP,请参阅 Linux 内核详情。 -
SEV_LIVE_MIGRATABLE_V2
。如果您想在支持 AMD SEV 上的 机密虚拟机实例上使用映像,请使用此标记。如需检查您的内核是否支持实时迁移,请参阅 Linux 内核详情。 -
TDX_CAPABLE
。如果您想在支持 Intel Trust Domain Extensions (TDX) 的 机密虚拟机实例上使用您的映像,请使用此标记。如需检查您的内核是否支持 Intel TDX,请参阅 Linux 内核详情。 -
SUSPEND_RESUME_COMPATIBLE
。支持在虚拟机上暂停和恢复。如需了解详情,请参阅操作系统兼容性。
-
ARCHITECTURE_UNSPECIFIED
X86_64
ARM64
- 与其他项目共享您的私有映像。
- 了解如何导入磁盘、映像和虚拟机实例。
- 了解如何将映像导出到 Cloud Storage。
- 了解如何从自定义映像启动虚拟机。
- 了解如何在映像系列中设置映像版本。
- 了解如何弃用自定义映像。
- 了解如何删除自定义映像。
Go
如需在本地开发环境中使用本页面上的 Go 示例,请安装并初始化 gcloud CLI,然后使用您的用户凭据设置应用默认凭据。
如需了解详情,请参阅 Set up authentication for a local development environment。
Java
如需在本地开发环境中使用本页面上的 Java 示例,请安装并初始化 gcloud CLI,然后使用您的用户凭据设置应用默认凭据。
如需了解详情,请参阅 Set up authentication for a local development environment。
Node.js
如需在本地开发环境中使用本页面上的 Node.js 示例,请安装并初始化 gcloud CLI,然后使用您的用户凭据设置应用默认凭据。
如需了解详情,请参阅 Set up authentication for a local development environment。
Python
如需在本地开发环境中使用本页面上的 Python 示例,请安装并初始化 gcloud CLI,然后使用您的用户凭据设置应用默认凭据。
如需了解详情,请参阅 Set up authentication for a local development environment。
REST
如需在本地开发环境中使用本页面上的 REST API 示例,请使用您提供给 gcloud CLI 的凭据。
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
如需了解详情,请参阅 Google Cloud 身份验证文档中的使用 REST 时进行身份验证。
创建自定义映像
本部分介绍如何在 Linux 虚拟机上创建自定义映像。 如需了解如何创建 Windows 映像,请参阅创建 Windows 映像。
选择映像存储位置
创建自定义映像时,您可以为该映像指定除了双区域位置之外的 Cloud Storage 位置。指定映像存储位置后,您可以通过确保跨区域实现冗余来满足数据存储区域的法规和合规性要求以及高可用性需求。如需创建、修改和删除存储在 Cloud Storage 中的映像,您必须拥有
roles/compute.storageAdmin
。存储位置功能是可选的。如果您未选择位置,则 Compute Engine 会将映像存储在最靠近映像来源的多区域位置。例如,在您通过位于
us-central1
的来源磁盘创建映像时,如果您没有为自定义映像指定位置,则 Compute Engine 会将映像存储在us
多区域位置。如果映像在您创建虚拟机的区域中未提供,则 Compute Engine 会在您首次创建虚拟机时在该区域中缓存映像。
如需查看存储映像的位置,请通过
gcloud compute
使用images describe
命令:gcloud compute images describe IMAGE_NAME \ --project=PROJECT_ID
请替换以下内容:
此功能发布之前的所有现有映像都保留在原来的位置,唯一的变化是您可以查看所有映像的位置。如果要移动现有映像,您必须在新位置重新创建该映像。
为影响准备虚拟机
即使磁盘挂接到正在运行的虚拟机,您也可以从磁盘创建映像。但是,如果将虚拟机置于更易于捕获映像的状态,则映像会更加可靠。本部分介绍如何为映像准备启动磁盘。
尽可能减少永久性磁盘的数据写入
使用以下过程之一减少磁盘写入:
停用磁盘的自动删除选项
默认情况下,启动磁盘上会启用自动删除选项。在通过磁盘创建映像之前,请先停用自动删除,以确保在您删除虚拟机时不会自动删除磁盘。请使用以下方法之一为磁盘停用自动删除功能。
控制台
gcloud
在 Google Cloud CLI 中,使用
gcloud compute instances set-disk-auto-delete
命令停用磁盘的自动删除选项。gcloud compute instances set-disk-auto-delete VM_NAME \ --no-auto-delete \ --disk=SOURCE_DISK
替换以下内容:
Go
Go
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Go 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Go API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Java
Java
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Java 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Java API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
Node.js
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Node.js 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Node.js API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Python
Python
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Python 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Python API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
REST
如需设置磁盘的自动删除选项,请向
instances.setDiskAutoDelete
方法发出POST
请求。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/VM_NAME/setDiskAutoDelete?autoDelete=false&deviceName=SOURCE_DISK
替换以下内容:
准备好虚拟机后,创建映像。
创建映像
您可从以下来源创建磁盘映像:您可以每 10 分钟创建磁盘映像一次。如果您想要发出大量创建磁盘映像的请求,可以在 60 分钟内发出最多 6 个请求。如需了解详情,请参阅快照频率限制。
控制台
gcloud
在 Google Cloud CLI 中,使用
gcloud compute images create
命令创建自定义映像。根据来源磁盘创建映像:
--force
标志是一个可选标志,可让您根据正在运行的实例创建映像。默认情况下,您无法根据正在运行的实例创建映像。只有当您确定要在实例正在运行的情况下创建映像时,才可指定此标志。gcloud compute images create IMAGE_NAME \ --source-disk=SOURCE_DISK \ --source-disk-zone=ZONE \ [--family=IMAGE_FAMILY] \ [--storage-location=LOCATION] \ [--force]
请替换以下内容:
根据来源映像创建映像:
gcloud compute images create IMAGE_NAME \ --source-image=SOURCE_IMAGE \ [--source-image-project=IMAGE_PROJECT] \ [--family=IMAGE_FAMILY] \ [--storage-location=LOCATION]
请替换以下内容:
根据快照创建映像:
gcloud compute images create IMAGE_NAME \ --source-snapshot=SOURCE_SNAPSHOT \ [--storage-location=LOCATION]
请替换以下内容:
查看映像位置:
使用
gcloud compute images describe
命令查看映像位置。gcloud compute images describe IMAGE_NAME
将
IMAGE_NAME
替换为您要查看的映像的名称。Go
Go
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Go 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Go API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Java
Java
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Java 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Java API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Python
Python
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Python 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Python API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
REST
向
images().insert
方法发出POST
请求,请求正文中的网址指向您要根据其创建映像的源对象。使用您自己的项目 ID 和资源名称来指定指向您资源的网址。根据永久性磁盘创建映像:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images { "name": "IMAGE_NAME", "sourceDisk": "/zones/ZONE/disks/SOURCE_DISK", ("storageLocations": "LOCATION",) ("forceCreate": "TRUE") }
请替换以下内容:
可选的
forceCreate
参数让您可以从正在运行的虚拟机创建映像。只有当您确定要从正在运行的虚拟机创建映像时,才可指定TRUE
。forceCreate
默认设置为FALSE
。根据其他映像创建映像:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images { "name": "IMAGE_NAME", "sourceImage": "/global/images/SOURCE_IMAGE", ("storageLocations": "LOCATION") }
请替换以下内容:
根据快照创建映像:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images { "name": "IMAGE_NAME", "sourceSnapshot": "(/SOURCE_PROJECT_ID)/global/snapshots/SOURCE_SNAPSHOT", ("storageLocations": "LOCATION") }
请替换以下内容:
有关添加映像的更多信息,请参阅映像参考。
共享映像
创建自定义映像后,您可以在多个项目之间共享该映像。如果您允许其他项目中的用户使用您的自定义映像,那么他们可以通过在其请求中指定该映像的项目来访问这些映像。
启用客机操作系统功能
使用客机操作系统 (OS) 功能,在自定义映像上配置以下网络、安全、存储和操作系统选项。具有这些已配置功能的自定义映像用作启动磁盘。
gcloud
结合使用
gcloud compute images create
命令和--guest-os-features
标志,以根据现有自定义映像创建新的自定义映像。gcloud compute images create IMAGE_NAME \ --source-image=SOURCE_IMAGE \ [--source-image-project=IMAGE_PROJECT] \ --guest-os-features="FEATURES,..." \ [--storage-location=LOCATION]
替换以下内容:
REST
结合使用
images().insert
命令和guestOsFeatures
标志,以根据现有自定义映像创建新的自定义映像。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/images { "name": "IMAGE_NAME", "sourceImage": "(projects/IMAGE_PROJECT)/global/images/SOURCE_IMAGE", ("storageLocations": "LOCATION",) "guestOsFeatures": [ { "type": "FEATURES" } ] }
替换以下内容:
避免在 UEFI 变量中包含敏感信息
统一可扩展固件接口 (UEFI) 变量是 UEFI 固件在启动时用于启动虚拟机操作系统的键值对变量。与将变量存储在硬件芯片上的物理机器不同,Compute Engine 会虚拟化这些变量的存储。因此,在许多操作系统中,所有应用和用户都可以访问这些变量并获取此类信息。
因此,Google 强烈建议您不要将敏感信息或个人身份信息(例如密码或私钥)写入或存储到 UEFI 变量中。
Arm 映像的注意事项
Google 提供在 Arm CPU 平台上运行的 C4A 和 Tau T2A 机器系列。您可以使用其中一个机器系列启动虚拟机,然后使用该源虚拟机创建 Arm 映像。创建自定义 Arm 映像的过程与创建 x86 映像的过程相同。
为了帮助您的用户区分 Arm 和 x86 映像,ARM 映像的
architecture
字段将设置为ARM64
。此字段的可能值包括:然后,映像用户可以对此字段进行过滤,以查找基于 x86 或 Arm 的映像。
后续步骤
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-12-22。
-