sail up でエラーが発生

https://laravel.com/docs/8.x を参考にしてM1 MacにLaravelをインストールした際、

./vendor/bin/sail up実行時に下記のエラーが発生します。

1
2
3
Pulling mysql (mysql:8.0)...
8.0: Pulling from library/mysql
ERROR: no matching manifest for linux/arm64/v8 in the manifest list entries

原因

mysqlのdockerイメージはarm64対応のものが公開されていないため。

対処方法

docker-compose.ymlにplatform指定を追記します。

1
2
3
    mysql:
        image: 'mysql:8.0'
        platform: linux/x86_64

その他の方法

MariaDB であればarm64イメージが公開されているので、

1
2
    mysql:
        image: mariadb:10.6

の様に変更して、MariaDBのイメージを使うという方法もある様です。

参考サイト

https://github.com/laravel/sail/issues/104