自分の環境ではmysqlのコンテナでエラーが出ました。
2022年3月現在の時点ではほぼネイティブ対応
(Rosetta2というCPU翻訳機を通さずに実行)
できるようになっているとのことでした。
参考:Docker公式
一部コマンドや今回のような一部の公式イメージでは
少し対応が必要になる場合があります。
エラー
$ docker compose up -d
[+] Running 0/1
⠹ mysql Pulling 3.1s
no matching manifest for linux/arm64/v8 in the manifest list entries
これはM1のプラットフォーム(アーキテクチャ)がarm64であるのに対し
mysqlのデフォルトのイメージがAMD64であるため一致しませんというエラーになります。
こちらの対策として
Docker-compose.ymlに
platform: linux/x86_64
という1行を加えます。
version: "3.7"
services:
mysql:
platform: linux/x86_64
image: mysql:5.7
こうするとimageが作成されます。
これで再度docker compose up -dするとコンテナが起動すると思います。
環境
参考までに今回インテルマックからM1へ移行したコンテナの構成です。
nginxプロキシをdocker composeで立てつつ
↓
wordpressコンテナ
↓
mysql5.7コンテナ
↓
db専用busyboxコンテナ
こんな形でローカル環境用として動かしていました。
所感
M1が出た当初はかなり色々問題がネット上に上がっていたはずでしたが
現在はdocker for mac自体がほぼM1で動くようになったこともあり
スムーズに移行ができました。
自分が関わったところだけですが以上のような印象を受けました。