Files
docker-php-stack/docker/server-php.dockerfile
T

47 lines
1.3 KiB
Docker

ARG SERVER_PHP_IMAGE=unknown
ARG COMPOSER_IMAGE=composer:latest
# Image Composer
FROM ${COMPOSER_IMAGE} AS php_composer
# Image du serveur PHP à utiliser (Apache, FrankenPHP...)
FROM ${SERVER_PHP_IMAGE}
# Installation de Composer
COPY --from=php_composer /usr/bin/composer /usr/local/bin/composer
# Activation du mode rewrite d'Apache
ARG SERVER_PHP_IMAGE
RUN if echo "$SERVER_PHP_IMAGE" | grep -qi apache; then \
a2enmod rewrite headers; \
fi
RUN apt-get update && apt-get install -y \
nano \
git \
mariadb-client \
npm \
# Pour l'extension PHP intl
libicu-dev \
# Zip
unzip zip libzip-dev zlib1g-dev \
# GD
libpng-dev libjpeg-dev libwebp-dev libavif-dev libfreetype6-dev \
&& docker-php-ext-configure gd \
--with-freetype \
--with-jpeg \
--with-webp \
--with-avif \
&& docker-php-ext-install zip pdo_mysql gd sockets intl \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/*
RUN usermod -u 1000 www-data && groupmod -g 1000 www-data
# Configuration pour Composer
RUN mkdir -p /var/www/.cache/composer && chown -R www-data:www-data /var/www/.cache
ENV COMPOSER_CACHE_DIR=/var/www/.cache/composer
# Configuration de NPM
RUN mkdir -p /var/www/.npm && chown -R www-data:www-data /var/www/.npm
ENV NPM_CONFIG_CACHE=/var/www/.npm