Laravel9用 Docker構築

Laravel9用 Docker構築

Twitter LINEで送る Facebook はてなブログ

Laravel9になりDockerの構築を一部変更

  1. PHP 8.1を利用
  2. Mailサーバmailhogを利用

フォルダ構成

├── docker-compose.yml
└── docker
    ├── apache
    │   └──default.conf
    └── Dockerfile

docker-compose.yml

version: '3.8'

services:
  database:
    image: postgres:12.2
    container_name: database
    restart: unless-stopped
    environment:
      POSTGRES_PASSWORD: secret
      POSTGRES_DB: laravel_docker
      PGDATA: /var/lib/postgresql/data/pgdata
    volumes:
      - ./postgres-data:/var/lib/postgresql/data
    ports:
      - '5432:5432'
  mail:
    image: mailhog/mailhog
    container_name: mailhog
    ports:
      - "8025:8025"
  php-apache:
    container_name: php-apache
    build:
      context: ./docker
    ports:
      - '8080:80'
      - '5173:5173'
    volumes:
      - ./:/var/www/laravel_docker
      - ./docker/apache/default.conf:/etc/apache2/sites-enabled/000-default.conf
    depends_on:
      - database

Laravel9用に設定を変更しているのですがポート解放など
Laravel9に変更された部分があり設定を変更しています。

Dockerfile

FROM php:8.1-apache
EXPOSE 5173
RUN curl -fsSL https://deb.nodesource.com/setup_16.x > steup_16.x
RUN ["/bin/bash",  "steup_16.x"]
RUN rm steup_16.x
RUN apt update \
        && apt install -y \
            g++ \
            libicu-dev \
            libpq-dev \
            libzip-dev \
            zip \
            zlib1g-dev \
        && docker-php-ext-install \
            intl \
            opcache \
            pdo \
            pdo_pgsql \
            pgsql \
        && a2enmod rewrite 
RUN apt install -y nodejs
WORKDIR /var/www/laravel_docker

RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer

default.conf

<VirtualHost *:80>
    ServerName laravel_docker
    DocumentRoot /var/www/laravel_docker/public

    <Directory /var/www/laravel_docker>
        AllowOverride All
    </Directory>
    ErrorLog ${APACHE_LOG_DIR}/error.log
    CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>

今回こちらの構成で動かすようにしています。 ご参考になれば