默认情况下,Skaffold 会自动检测目标集群的架构,并构建与工作站架构匹配的映像,即使目标集群的架构是混合架构(x86 和 Arm)也是如此。
您还可以选择在 IDE 中添加环境变量,或在 skaffold.yaml
文件中添加用于指定要为哪个平台构建的参数,以替换 Skaffold 的自动检测。
指定要为哪个平台构建映像
如果您想在构建映像时替换 Skaffold 的自动检测,可以通过以下方式指定要为哪个平台构建映像:
以下列表显示了 IDE 的 Environment variables 字段中 SKAFFOLD_PLATFORM
环境变量的可能值。您还可以将这些值用于 CLI 中的 --platform
标志或 skaffold.yaml
文件中的 platforms
参数:
x86 | Arm |
---|---|
amd64 |
aarch64 |
linux/amd64 |
linux/aarch64 |
将环境变量添加到 IDE 的配置中
如需向 Cloud Code 的配置添加环境变量,请按以下步骤操作:
在 IDE 中,依次点击 Run > Edit Configurations。
在运行标签页的 Advanced Settings(高级设置)代码段下,在 Environment variables(环境变量)字段中输入您的环境变量。
例如:
SKAFFOLD_PLATFORM=linux/aarch64
这会替换 Skaffold 的自动检测,并构建您指定的映像类型。您的
skaffold.yaml
文件保持不变。
将 platforms 参数添加到 skaffold.yaml 文件中
如需指定要为哪个平台构建映像,请将 platforms
参数添加到 skaffold.yaml
文件中:
build:
platforms: ["linux/aarch64"]
artifacts:
- image: example
如需详细了解 Cloud Code 对 Arm 和混合架构 GKE 集群的支持,请参阅 Arm 支持。