|
2025-06-03
2025-07-19
概要 †PHP8.3、MariaDB、Apacheの開発環境を構築時のメモ。 目次 †docker-compose †version: "3"
services:
php83-sample-web:
build:
context: ./container_php
dockerfile: Dockerfile
container_name: php83-sample-web
volumes:
- ./:/var/www/html
- ./volumes/logs:/var/log/apache2
#- ./volumes/apache2:/etc/apache2
ports:
- 8885:80
# 一応、他コンテナのDBにも繋げるように
extra_hosts:
- "host.docker.internal:host-gateway"
php83-sample-db:
#build:
# context: ./container_mysql
# dockerfile: Dockerfile
image: mariadb:10.6.8
hostname: php83-sample-db
container_name: php83-sample-db
environment:
- MARIADB_USER=sample
- MARIADB_PASSWORD=sample
- MARIADB_ROOT_PASSWORD=sample
volumes:
- ./volumes/data:/var/lib/mysql
ports:
- 3305:3306
# デフォルトでクライアント文字コードが latin1 になってしまう為、起動時に指定
command: >
mariadbd --character-set-server=utf8mb4 --character-set-client-handshake=false --character-set-client=utf8mb4
Docker(PHP8.3) †composer 対応あり。 container_php/Dockerfile FROM php:8.3-apache
RUN apt update
RUN apt install -y git
# Composerインストール
RUN curl -sS https://getcomposer.org/installer | php \
&& mv composer.phar /usr/local/bin/composer
# 作業ディレクトリ
WORKDIR /var/www/html
# 各種エクステンションのインストール
ARG myenv_file=docker-php-ext-myenv.ini
RUN apt install -y libzip-dev libicu-dev libonig-dev libpng-dev
RUN apt-get install -y --no-install-recommends zip unzip && docker-php-ext-install zip intl pdo pdo_mysql mysqli mbstring gd
RUN echo extension=zip>>/usr/local/etc/php/conf.d/${myenv_file}
RUN echo extension=intl>>/usr/local/etc/php/conf.d/${myenv_file}
# CakePHPプロジェクト作成
# RUN composer create-project --prefer-dist cakephp/app:^5.0 sampleapp
RUN a2enmod rewrite
EXPOSE 80
|