デフォルトでは、ターゲット クラスタのアーキテクチャが混在している場合(x86 と Arm の両方)でも、Skaffold はターゲット クラスタのアーキテクチャを自動的に検出し、ワークステーションのアーキテクチャと一致するイメージを構築します。
IDE に環境変数を追加するか、ビルドするプラットフォームを指定する skaffold.yaml
ファイルのパラメータを追加することもできます。これにより、Skaffold の自動検出がオーバーライドされます。
イメージをビルドするプラットフォームを指定する
イメージをビルドするときに Skaffold の自動検出をオーバーライドする場合は、次の方法でイメージをビルドするプラットフォームを指定できます。
IDE の [環境変数] フィールドの SKAFFOLD_PLATFORM
環境変数で使用できる値を以下に示します。これらの値は、CLI の --platform
フラグまたは skaffold.yaml
ファイルの platforms
パラメータにも使用できます。
x86 | Arm |
---|---|
amd64 |
aarch64 |
linux/amd64 |
linux/aarch64 |
IDE の構成に環境変数を追加する
Cloud Code の構成に環境変数を追加する手順は次のとおりです。
IDE で [実行] > [構成を編集] の順にクリックします。
[実行] タブの [詳細設定] スニペットで、[環境変数] フィールドに環境変数を入力します。
例:
SKAFFOLD_PLATFORM=linux/aarch64
これにより、Skaffold の自動検出がオーバーライドされ、指定したイメージタイプがビルドされます。
skaffold.yaml
ファイルは変更されません。
プラットフォーム パラメータを skaffold.yaml ファイルに追加する
イメージをビルドするプラットフォームを指定するには、skaffold.yaml
ファイルに platforms
パラメータを追加します。
build:
platforms: ["linux/aarch64"]
artifacts:
- image: example
Arm と混合アーキテクチャの GKE クラスタ用の Cloud Code のサポートの詳細については、Arm のサポートをご覧ください。