M1 Mac で 普通にPodmanをインストールしてイメージをPullしようとすると、「お使いのアーキテクチャでビルドされたイメージは存在しないよ。」というエラーメッセージが出てきて詰んでしまう。
$ podman image pull ibmcom/db2
...
no image found in manifest list for architecture arm64
準備
-
homebrew
でpodman
をインストール# brew install podman
x86 の Podman 環境を作成
-
Fedora CoreOS | The Fedora Project の中のQEMU qcow2.xz をダウンロードする。
-
Podmanの machine として登録し、
intel
という名前をつける。# podman machine init --image-path ~/images/fedora-coreos-38.20230902.3.0-qemu.x86_64.qcow2.xz intel
-
設定を編集
# cd ~/.config/containers/podman/machine/qemu # cp intel.json{,.bk} # vi intel.json
aarch64
をx86_64
に変更し、以下のキーワードを削除"-machine", "q35,accel=hvf:tcg", "-cpu", "host", "-accel", "hvf", "-accel", "tcg", "-drive", "file=/Users/{UserName}/.local/share/containers/podman/machine/qemu/intel_ovmf_vars.fd,if=pflash,format=raw"
-
デフォルトのマシンを切り替える。
podman system connection default intel # 戻すときは podman system connection default podman-machine-default
-
マシンをスタート
podman machine start intel
これで、x86 に切り替わったため、x86 でビルドされたイメージがpullされ、利用することができるようになった。