8. Apache + PHP8.0コンテナの作成

.env

.envを作成しておくと、Dockerfiledocker-compose.ymlで使うパラメータを指定できます。

APP_HOST_PATH=~/projects/
APP_LOCAL_PATH=/work/backend

WEB_HTTP_PORT=8881
WEB_HTTPS_PORT=4431

APACHE_DOCUMENT_ROOT=/work/backend/
APACHE_HOST_LOG_PATH=./logs/apache2
APACHE_SITES_PATH=./apache2/sites
APACHE_SSL_PATH=./apache2/ssl/

NETWORKS_DRIVER=bridge
VOLUMES_DRIVER=local

MYSQL_VERSION=8.0.26
DB_HOST=mysql
DB_PORT=3307
DB_ROOT_PASS=
DB_USER=docker
DB_PASS=

Apache + PHP8.0

Dockerfile

FROM php:8.0.2-apache-buster

ADD php8.0.ini /usr/local/etc/php/
ADD 000-default.conf /etc/apache2/sites-enabled/

RUN apt-get update \
  && apt-get install -y zlib1g-dev unzip vim libzip-dev \
  && docker-php-ext-install zip pdo_mysql

# Composer
RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
RUN php composer-setup.php
RUN php -r "unlink('composer-setup.php');"
RUN mv composer.phar /usr/local/bin/composer

ENV COMPOSER_ALLOW_SUPERUSER 1
ENV COMPOSER_HOME /composer
ENV PATH $PATH:/composer/vendor/bin
RUN composer global require "laravel/installer"

WORKDIR ${APP_LOCAL_PATH}

Web環境構築(Docker編)