version: '3.8'

services:
  # Laravelアプリケーション用のPHPコンテナ
  app:
    image: php:7.4-fpm
    container_name: laravel_app
    restart: unless-stopped
    working_dir: /var/www/html
    volumes:
      - ./:/var/www/html
    networks:
      - laravel
    build:
      context: .
      dockerfile: Dockerfile
    ports:
      - "8081:8080"  # ホスト側の8081をコンテナ内の80にマッピング
    depends_on:
      - db

  # MySQLコンテナ（M1 Macに対応した設定）
  db:
    image: mysql:5.7  # MySQLの公式イメージを使用
    container_name: laravel_db
    platform: linux/amd64  # M1 Mac上でもamd64アーキテクチャで動作させる
    restart: unless-stopped
    environment:
      MYSQL_ROOT_PASSWORD: root_password
      MYSQL_DATABASE: laravel
      MYSQL_USER: user
      MYSQL_PASSWORD: user_password
    ports:
      - "3307:3306"  # ホスト側の3307をコンテナ内の3306にマッピング
    volumes:
      - db_data:/var/lib/mysql
    networks:
      - laravel

networks:
  laravel:
    driver: bridge

volumes:
  db_data:
