44 lines
1.1 KiB
Docker
44 lines
1.1 KiB
Docker
FROM php:7.4-apache AS base
|
|
ENV APACHE_DOCUMENT_ROOT /var/www/html
|
|
WORKDIR ${APACHE_DOCUMENT_ROOT}
|
|
|
|
RUN apt update && \
|
|
apt install -y \
|
|
libicu-dev \
|
|
libgd-dev \
|
|
libonig-dev \
|
|
unzip && \
|
|
apt purge -y --auto-remove && \
|
|
apt-get clean && \
|
|
rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* /usr/share/doc/*
|
|
|
|
RUN docker-php-ext-install \
|
|
exif \
|
|
gd \
|
|
intl \
|
|
mbstring \
|
|
mysqli \
|
|
pdo_mysql
|
|
|
|
FROM composer:2 AS build
|
|
WORKDIR ${APACHE_DOCUMENT_ROOT}
|
|
|
|
COPY composer.json .
|
|
COPY composer.lock .
|
|
RUN composer install --no-dev --no-scripts --ignore-platform-reqs
|
|
|
|
COPY . .
|
|
RUN composer dumpautoload --optimize
|
|
|
|
FROM base AS final
|
|
COPY --from=build ${APACHE_DOCUMENT_ROOT} ${APACHE_DOCUMENT_ROOT}
|
|
|
|
RUN sed -ri -e 's!/var/www/!/var/www/html!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf
|
|
RUN sed -ri -e 's!AllowOverride None!AllowOverride All!g' /etc/apache2/apache2.conf
|
|
|
|
RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini"
|
|
RUN sed -ri -e 's!upload_max_filesize = 2M!upload_max_filesize = 8M!g' $PHP_INI_DIR/php.ini
|
|
|
|
RUN chown -R www-data:www-data ${APACHE_DOCUMENT_ROOT}
|
|
|
|
VOLUME ${APACHE_DOCUMENT_ROOT} |