Windows IIS ワークロードをビルドしてデプロイする
Skaffold は、アプリケーションのビルド、push、デプロイのワークフローを処理します。Skaffold 構成 skaffold.yaml
は、生成されたアーティファクトのルートフォルダにあります。skaffold.yaml
ファイルの編集方法については、Skaffold ファイルのリファレンスをご覧ください。
始める前に
このドキュメントでは、移行を完了し、生成された移行アーティファクトを確認していることを前提としています。
コンテナ イメージをビルドする
Migrate to Containers CLI と Google Cloud の Migrate to Containers では、異なる 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 ビルダー VM が作成されるネットワーク(VPC 名)
- SUBNETWORK: Windows ビルダーが作成されるサブネットワーク
マルチアーキテクチャ イメージの構築の説明に従ってください。
Cloud Build でカスタム ワーカープールを使用する場合(たとえば、ファイアウォール ルールが作成されないようにする場合)は、次の環境変数を設定します。
- 必須
- WORKERPOOL: ワーカープールの名前
- WORKERPOOL_REGION: ワーカープールのリージョン
- 省略可
- USE_INTERNAL_IP: ワーカープールが共有 VPC で NETWORK に接続されている場合は 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 のビルドが失敗する問題のトラブルシューティング方法を学習する。