0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

M2チップ搭載MacのDocker+Lima環境でAMD64用MySQL5系のコンテナを動かす方法(2025年度版)

Posted at

この記事の目的

M2チップ搭載のMac上でDocker+Lima環境を用いてMySQL5系を動かそうとした際、
ちょっと躓いた点があったので、備忘録として

動作環境

PC: MacBook Air (M2, 2022)
OS: macOS Ventura 13.7.2

躓いた点その1

brewコマンドでLimaをインストール後、
LimaのGithubからdocker用の起動テンプレートを入手して、
Limaの起動には成功。

ところが、dockerで--platformオプションを付けてもエラーが出て、AMD64用のMySQL5.6コンテナが起動しません。
公式ドキュメントを確認したところ、docker.yamlの記述では、デフォルトでRosettaが有効になっていないため、明示的にRosettaを有効にする必要があります。

以下の記載をyamlファイルに追記すればOKです。

vmType: "vz"
rosetta:
  enabled: true
  binfmt: true

躓いた点その2

2025年1月現在、Limaのdocker.yamlテンプレートではOSがUbuntu24.04になっていますが、
こちらのバージョンに搭載されているカーネルのバージョンとMacOS 13に搭載されているRossettaの相性の問題で、Dockerコンテナが動かない現象が報告されているようです。(こちらソース元リンクを紛失したので後で追記します)

既にApple側で対応済とのことですので、MacOSを14以上にアップデートするか、どうしてもOSを更新できない場合は、古いカーネルであれば問題なく動くらしいので、古いカーネルを使用しているUbuntu22.04あたりを使用するよう、docker.yaml内の記述を修正すれば解決するようです。(自分はやむなく後者で対応しました)

images:
- location: "https://cloud-images.ubuntu.com/releases/22.04/release/ubuntu-22.04-server-cloudimg-arm64.img"
  arch: "aarch64"

さいごに

ある程度古い環境を最新版の端末、OSで動かす必要性というのはたまに出てきますが、数年前、場合によっては数ヶ月前に出来た方法がミドルウェアのサポート切れなどによって再現できなくなる状況というのは、やはりどうしても出てきます。私が躓いたこの備忘録が誰かの一助となれば幸いです。

0
1
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
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?