マニフェストリストの作成
このステップでは、Docker でマニフェストリストを作成する方法を学びます。マニフェストリストはイメージマニフェストのリストで、単一のイメージ名を使用して異なるアーキテクチャやオペレーティングシステム用のイメージを参照できるようにします。これはマルチアーキテクチャイメージを構築する際に特に有用です。
まず、マニフェストリストの作成に使用する 2 つの異なるイメージを取得しましょう。amd64
と arm64
アーキテクチャ用の alpine
イメージを使用します。
docker pull alpine:latest
docker pull --platform arm64 alpine:latest
最初のコマンドは、現在のアーキテクチャ(おそらく amd64
)用の alpine:latest
イメージを取得します。2 番目のコマンドは、明示的に arm64
アーキテクチャ用の alpine:latest
イメージを取得します。
これで、docker manifest create
コマンドを使用してマニフェストリストを作成できます。構文は docker manifest create TARGET_IMAGE SOURCE_IMAGE [SOURCE_IMAGE...]
です。amd64
と arm64
用の alpine:latest
イメージを含む my-alpine:latest
という名前のマニフェストリストを作成します。
docker manifest create my-alpine:latest alpine:latest alpine:latest --amend alpine:latest --platform arm64
このコマンドでは:
my-alpine:latest
は、作成する新しいマニフェストリストの名前です。
alpine:latest
は、最初のソースイメージ(デフォルトのアーキテクチャ用)です。
--amend alpine:latest --platform arm64
は、arm64
プラットフォーム用の alpine:latest
イメージをマニフェストリストに追加します。
このコマンドを実行すると、ローカルにマニフェストリストが作成されます。ただし、まだレジストリにプッシュされていません。後のステップでプッシュします。