构建和部署 Windows IIS 工作负载
Skaffold 可处理构建、推送和部署应用的工作流。Skaffold 配置 skaffold.yaml
位于生成的工件的根文件夹中。如需了解如何修改 skaffold.yaml
文件,请参阅 Skaffold 文件参考文档。
准备工作
本文档假定您已完成迁移并查看生成的迁移工件。
构建容器映像
Migrate to Containers CLI 和 Migrate to Containers on Google Cloud 会生成不同的 Skaffold 配置。通过 Migrate to Containers CLI 生成的配置,您可以在 Windows 机器上构建单架构映像,以及在 Linux 机器上使用 Cloud Build 构建多架构映像。但是,由 Google Cloud 上的 Migrate to Containers 生成的 Skaffold 配置允许您仅在 Linux 机器上使用 Cloud Build 构建多架构映像。
如果您使用 Cloud Shell,则 Skaffold 已安装。如果您需要安装 Skaffold,请参阅安装 Skaffold。
在 Windows 机器上构建单架构映像
在 Windows 机器上,使用 Skaffold 构建单架构容器映像:
skaffold build -d eu.gcr.io/PROJECT_ID --cache-artifacts=false
将 PROJECT_ID 替换为包含工作负载集群的项目的 ID。
如果要在同一步骤中构建和部署容器映像,则可以将 build
命令替换为 run
命令。
在 Linux 机器上构建多架构映像
设置以下环境变量:
- 必填
- CLOUDBUILD_PROJECT:要运行 Cloud Build 的项目
- REGION:将运行 Cloud Build 的区域
- ZONE:将运行 Cloud Build 的可用区
- 可选 - 如果未指定网络和子网,则使用默认 VPC 和默认子网。
- NETWORK:将在其中创建 Windows 构建器虚拟机的网络(VPC 名称)
- SUBNETWORK:将在其中创建 Windows 构建器的子网
按照构建多架构映像中的说明进行操作。
如果要为 Cloud Build 使用自定义工作器池(例如,为了避免创建防火墙规则),请设置以下环境变量:
- 必填
- WORKERPOOL:工作器池的名称
- WORKERPOOL_REGION:工作器池的区域
- 可选
- USE_INTERNAL_IP:如果工作器池将连接到 NETWORK 的共享 VPC,则为 true
运行 Windows 构建的命令采用以下格式:
export CLOUDBUILD_PROJECT=CLOUDBUILD_PROJECT
export REGION=REGION
export ZONE=ZONE
skaffold build -d eu.gcr.io/PROJECT_ID
将 PROJECT_ID 替换为包含工作负载集群的项目的 ID。
如果要在同一步骤中构建和部署容器映像,则可以将 build
命令替换为 run
命令。
部署容器映像
构建容器映像后,请使用 Skaffold 部署它:
skaffold run -d eu.gcr.io/PROJECT_ID
将 PROJECT_ID 替换为包含工作负载集群的项目的 ID。
后续步骤
- 了解如何监控迁移后的工作负载。
- 了解如何排查 Windows 映像的 Skaffold 构建失败问题。