构建和部署 Windows IIS 工作负载

本页介绍了如何使用 Skaffold 构建和部署 Windows 应用容器。

Skaffold 可处理构建、推送和部署应用的工作流。Skaffold 配置 skaffold.yaml 位于生成的制品的根文件夹中。如需了解如何修改 skaffold.yaml 文件,请参阅 Skaffold 文件参考文档

准备工作

本文档假定您已完成迁移并查看了生成的迁移制品。

构建容器映像

通过 Migrate to Containers CLI 生成的配置,您可以在 Windows 机器上构建单架构映像,以及在 Linux 机器上使用 Cloud Build 构建多架构映像

如果您使用 Cloud Shell,则 Skaffold 已安装。如果您需要安装 Skaffold,请参阅安装 Skaffold

在 Windows 机器上构建单架构映像

在 Windows 机器上,使用 Skaffold 构建单架构容器映像:

skaffold build -d REPOSITORY_PATH --cache-artifacts=false

REPOSITORY_PATH 替换为工件仓库的路径。例如 us-central1-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME

如果您想在同一步骤中构建和部署容器映像,则可以将 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:如果 workerpool 通过共享 VPC 连接到 NETWORK,则为 true

以下是运行 Windows build 的命令:

export CLOUDBUILD_PROJECT=CLOUDBUILD_PROJECT
export REGION=REGION
export ZONE=ZONE

skaffold build -d REPOSITORY_PATH

REPOSITORY_PATH 替换为工件仓库的路径。例如 us-central1-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME

如果您想在同一步骤中构建和部署容器映像,则可以将 build 命令替换为 run 命令。

部署容器映像

容器映像构建完成后,使用 Skaffold 进行部署:

skaffold run -d REPOSITORY_PATH

REPOSITORY_PATH 替换为工件仓库的路径。例如 us-central1-docker.pkg.dev/PROJECT_ID/REPOSITORY_NAME

后续步骤