php-common-dev/docs/docker-php.md
2025-04-03 20:52:16 +09:00

1.9 KiB
Raw Permalink Blame History

  • php:*-apache サイズ:約350MB以上
  • php:*-cli-alpine サイズ:約350MB以上
  • php:*-fpm-alpine

php:*-apache + composerによる構築

FROM php:8.3-apache

# 必要最低限のインストール
RUN apt-get update && apt-get install -y --no-install-recommends \
    libyaml-dev \
    unzip \
    curl \
    && rm -rf /var/lib/apt/lists/*

# Composerのインストール公式手順
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer

# xdebugのインストールバージョン指定せず最新版
RUN pecl install xdebug \
    && docker-php-ext-enable xdebug

# yaml extensionのインストール
RUN pecl install yaml \
    && docker-php-ext-enable yaml

PHP-FPM + composer + Nginxの構成

FROM php:8.3-fpm-alpine

# 必要パッケージのインストール
RUN apk add --no-cache \
    libyaml-dev \
    imagemagick \
    imagemagick-dev \
    libheif \
    unzip \
    curl \
    autoconf \
    gcc \
    g++ \
    make \
    && pecl install yaml xdebug \
    && docker-php-ext-enable yaml xdebug \
    && apk del autoconf gcc g++ make # ビルド系は後で削除して軽量化

# Composerの追加公式composerイメージから取得
COPY --from=composer:latest /usr/bin/composer /usr/bin/composer

WORKDIR /var/www/html

GDの対応

# 必要パッケージを追加
RUN apk add --no-cache \
    libpng-dev \
    libjpeg-turbo-dev \
    freetype-dev \
    ...

# GDをビルドして有効化enable不要
RUN docker-php-ext-configure gd \
    --with-freetype \
    --with-jpeg \
    && docker-php-ext-install gd

ImageMagickの対応

RUN apk add --no-cache \
    imagemagick \
    imagemagick-dev \
    libheif \


RUN pecl install imagick \
    && docker-php-ext-enable imagick