LoginSignup
0
0

More than 1 year has passed since last update.

マルチプラットフォーム Docker ビルドを kaniko で行う

Posted at

これは何?

kaniko を使って, docker buildx みたいなことをする話です.

結論

docker run の引数に --platform つけ, それに対応する kaniko の image をしていす
ただし, linux/amd64, linux/arm64, linux/ppc64le の3種類のみ対応しています.

想定読者

  • docker in docker をやりたくない人

想定していない読者

  • Kubernetes 使う人

詳細

kaniko は customPlatform の説明にあるように, 異なるアーキテクチャに向けた docker image のビルドはできません.
ですが, kaniko 自身は v.1.5.0 から multi-platform image となり, 3種類のプラットフォームで動作することができます.

ということで, 作成する docker image のターゲットプラットフォームで, kaniko を動かせば OK ということです.

linux/arm64 の docker image を作成するなら, 次のように platform 指定します.

docker run --platform linux/arm64 -v "$context":/workspace \
  gcr.io/kaniko-project/executor:latest@sha256:1eaf7551bcc48b9a31deac4781433fabcd8ca633c4c0a3c61a281d4ec1fffa41 \
  --dockerfile "${dockerfile}" --destination "${destination}" --context dir:///workspace/
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0