.ymlファイルを作成しdocker-compose upでコンテナを立ち上げようとしたところ...
エラーが出ました。
原因は.ymlファイルの設定。
version: '3.7'
services:
php: ......(省略)
mysql:
image: mysql:8.0
container_name: mysql
ports:
- "4306:3306"
volumes:
- ./docker/db/data:/var/lib/mysql
- ./docker/db/my_conf:/etc/mysql/conf.d
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: laravel
これはNG。
正しくは
version: '3.7'
services:
php: ......(省略)
mysql:
image: mysql:8.0
container_name: mysql
ports:
- "4306:3306"
volumes:
- ./docker/db/data:/var/lib/mysql
- ./docker/db/my_conf:/etc/mysql/conf.d
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: laravel
段落を守らないとダメらしい。
これはAppleシリコンMac(M1)で起こるようで、解決法は
platform: linux/x86_64
を.ymlファイルに追加する。つまり...
version: '3.7'
services:
php: ......(省略)
mysql:
image: mysql:8.0
container_name: mysql
ports:
- "4306:3306"
platform: linux/x86_64 ⇦※追加!!!
volumes:
- ./docker/db/data:/var/lib/mysql
- ./docker/db/my_conf:/etc/mysql/conf.d
environment:
MYSQL_ROOT_PASSWORD: password
MYSQL_DATABASE: laravel
これでうまくいきます。