0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

M1にdocker環境移したらエラーが出た|mysqlコンテナ

Last updated at Posted at 2022-02-26

自分の環境ではmysqlのコンテナでエラーが出ました。
2022年3月現在の時点ではほぼネイティブ対応
(Rosetta2というCPU翻訳機を通さずに実行)
できるようになっているとのことでした。
参考:Docker公式
一部コマンドや今回のような一部の公式イメージでは
少し対応が必要になる場合があります。

エラー

error.sh
$ 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行を加えます。

docker-compose.yml
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で動くようになったこともあり
スムーズに移行ができました。
自分が関わったところだけですが以上のような印象を受けました。

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

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?