如需在 Kubernetes 上运行或调试应用,您需要通过在 Develop on Kubernetes 运行配置中进行配置来设置容器映像的构建方式。
在项目的根目录不包含 skaffold.yaml
文件或未引用 skaffold.yaml
的项目中,您可以使用 Cloud Code 界面选择构建器和构建环境。
在本地构建是免费的,因为它使用的是您自己的资源。使用 Cloud Build 进行构建适用于运行速度较慢或与目标集群处理器架构不匹配的机器。如需了解使用 Cloud Build 构建应用的费用,请参阅 Cloud Build 价格。
指定映像的构建方式
Cloud Code 支持 Docker、Jib 和 Buildpack 工件类型。
如需设置或修改构建选项,请前往导航栏或顶层主菜单中的“Run/Debug”配置选择器:Run > Edit Configurations > Develop on Kubernetes,然后点击 Build/Deploy 标签页。
不使用 skaffold.yaml
如果导入没有 skaffold.yaml
文件的现有应用或运行不含 skaffold.yaml
的应用,系统会提示您在初始化时指定设置。
如果您使用的是某个 Cloud Code 示例应用,为了使用该界面,请先删除 skaffold.yaml
文件,然后再运行构建操作。如需了解选择构建器和构建环境(没有界面)的步骤,请参阅手动创建 Skaffold 配置。
- 转到导航栏或顶级主菜单中的“运行/调试”(Build/Deploy) 配置选择器:运行 > 修改配置 > 在 Kubernetes 上开发,然后选择构建/部署 (Build/Deploy) 标签页。
- 点击初始化。
- 在使用 Cloud Code 初始化 Kubernetes 项目对话框中的构建设置下,选择要构建的映像,然后点击修改图标或按 Enter 键。
选择要使用的构建器,然后点击 Okay。
您指定的构建器和设置将作为您的默认构建偏好设置存储在 Skaffold 配置中。
要返回包含新设置的“运行配置”对话框,请点击初始化。
使用现有 skaffold.yaml
在运行配置设置的 Build/Deploy 标签页中,您可以为默认配置文件配置构建设置。
您还可以查看所有现有映像的映像名称、构建器和构建器参数。
在 Cloud Code 中使用 Skaffold 配置文件
Cloud Code 会在后台使用 Skaffold 工具为构建/部署标签页中的功能提供支持。如需为不同的构建或部署环境(例如本地或远程构建)配置 Cloud Code,请使用 Skaffold 配置文件。创建新的 Skaffold 配置文件
如果要为不同的上下文定义构建、测试和部署配置,您可以使用不同的 Skaffold 配置文件。
1. 如需创建新的配置文件,请依次前往 Run > Edit Configurations > Develop on Kubernetes,然后选择 Build/Deploy 标签页。在部署配置文件框中,点击 + 添加 Skaffold 配置文件。
在“创建新的配置文件”对话框中,输入配置文件名称,选择构建环境,然后点击确定。
创建新的配置文件后,系统会在运行配置面板的部署配置文件组合框中自动选择相应配置文件。
您也可以通过手动修改 skaffold.yaml
文件来添加配置文件。
以下示例展示了一个名为 cloudbuild
的配置文件,用于通过 Cloud Build 构建映像:
profiles:
# use the cloudbuild profile to build images using Google Cloud Build
- name: cloudbuild
build:
googleCloudBuild: {}
如需详细了解 Skaffold 配置文件,请参阅 Skaffold 配置文件文档
按构建环境过滤配置文件
使用 Cloud Code: Kubernetes 运行配置面板中的构建环境过滤器输入,您可以根据所需的构建环境过滤 Skaffold 配置文件。
转到导航栏或顶级主菜单中的“运行/调试”(Build/Deploy) 配置选择器:运行 > 修改配置 > 在 Kubernetes 上开发,然后选择构建/部署 (Build/Deploy) 标签页。
默认情况下,任何构建环境都将处于选中状态。此过滤条件会显示所选 Skaffold 配置文件中的所有 Skaffold 配置文件。
在构建环境过滤条件下拉菜单中,选择要查看的构建环境。
您可以在部署配置文件下拉菜单中找到与所选构建环境匹配的配置文件。如果您选择的构建环境没有可用的配置文件,系统可能会提示您创建配置文件。
后续步骤
- 使用文件同步和热重载来加快开发速度。
- 详细了解 Cloud Native Buildpack。
- 了解 Cloud Build 的优势。