Docker を使った Laravel 開発環境の構築方法を解説します。
docker-compose.yml の設定
services:
app:
build:
context: .
dockerfile: Dockerfile
platform: linux/amd64 # M1/M2 Mac 向け
volumes:
- .:/var/www/html
nginx:
image: nginx:alpine
ports:
- '80:80'
volumes:
- .:/var/www/html
- ./docker/nginx/default.conf:/etc/nginx/conf.d/default.conf
mysql:
image: mysql:8.0
platform: linux/amd64
environment:
MYSQL_DATABASE: laravel
MYSQL_ROOT_PASSWORD: secret
Dockerfile
FROM php:8.3-fpm
RUN docker-php-ext-install pdo pdo_mysql
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
M1/M2 Mac での注意点
Apple Silicon では platform: linux/amd64 の指定が必要なイメージがあります。特に MySQL 8.0 は arm64 版のイメージを使うか、platform 指定が必要です。
まとめ
Docker を活用することで、チーム全員が同じ環境で開発でき、本番環境との差異も最小化できます。