83 lines
2.9 KiB
Docker
83 lines
2.9 KiB
Docker
FROM php:8.1-fpm-alpine
|
|
|
|
ADD https://github.com/mlocati/docker-php-extension-installer/releases/latest/download/install-php-extensions /usr/local/bin/
|
|
|
|
RUN apk update && apk upgrade
|
|
|
|
COPY ./config/php.ini-production "$PHP_INI_DIR/php.ini-production"
|
|
COPY ./config/pool.d "$PHP_INI_DIR/"
|
|
RUN mv "$PHP_INI_DIR/php.ini-production" "$PHP_INI_DIR/php.ini"
|
|
|
|
RUN apk add --no-cache --virtual .build-deps $PHPIZE_DEPS \
|
|
&& pecl install uploadprogress \
|
|
&& docker-php-ext-enable uploadprogress \
|
|
&& apk del .build-deps $PHPIZE_DEPS \
|
|
&& chmod uga+x /usr/local/bin/install-php-extensions && sync
|
|
|
|
RUN install-php-extensions bcmath \
|
|
bz2 \
|
|
smbclient \
|
|
calendar \
|
|
curl \
|
|
exif \
|
|
fileinfo \
|
|
ftp \
|
|
gd \
|
|
gettext \
|
|
imagick \
|
|
imap \
|
|
intl \
|
|
ldap \
|
|
mbstring \
|
|
mcrypt \
|
|
memcached \
|
|
mongodb \
|
|
mysqli \
|
|
opcache \
|
|
openssl \
|
|
pdo \
|
|
pdo_mysql \
|
|
redis \
|
|
soap \
|
|
sodium \
|
|
sysvsem \
|
|
sysvshm \
|
|
xmlrpc \
|
|
xsl \
|
|
zip \
|
|
gmp
|
|
|
|
#RUN apk add --no-cache ssmbclient
|
|
|
|
RUN echo -e "\n opcache.enable=1 \n opcache.enable_cli=1 \n opcache.memory_consumption=2048 \n opcache.interned_strings_buffer=1024 \n opcache.max_accelerated_files=8000 \n opcache.revalidate_freq=60 \n opcache.fast_shutdown=1" >> /usr/local/etc/php/conf.d/docker-php-ext-opcache.ini \
|
|
&& echo -e "\n xdebug.remote_enable=1 \n xdebug.remote_host=localhost \n xdebug.remote_port=9000" >> /usr/local/etc/php/conf.d/docker-php-ext-xdebug.ini \
|
|
&& echo -e "\n xhprof.output_dir='/var/tmp/xhprof'" >> /usr/local/etc/php/conf.d/docker-php-ext-xhprof.ini \
|
|
&& cd ~
|
|
|
|
# Install composer
|
|
RUN php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');" \
|
|
&& php -r "copy('https://composer.github.io/installer.sig', 'signature');" \
|
|
&& php -r "if (hash_file('SHA384', 'composer-setup.php') === trim(file_get_contents('signature'))) { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;" \
|
|
&& php composer-setup.php --install-dir=/usr/local/bin --filename=composer \
|
|
&& php -r "unlink('composer-setup.php');"
|
|
|
|
# Install WP-CLI
|
|
RUN curl -O https://raw.githubusercontent.com/wp-cli/builds/gh-pages/phar/wp-cli.phar \
|
|
&& chmod +x wp-cli.phar \
|
|
&& mv wp-cli.phar /usr/local/bin/wp
|
|
|
|
# Install msmtp - To Send Mails on Production & Development
|
|
RUN apk add msmtp
|
|
|
|
RUN apk add --no-cache gnupg
|
|
|
|
# modify www-data user to have id 1000
|
|
RUN apk add \
|
|
--no-cache \
|
|
--repository http://dl-3.alpinelinux.org/alpine/edge/community/ --allow-untrusted \
|
|
--virtual .shadow-deps \
|
|
shadow \
|
|
&& usermod -u 1000 www-data \
|
|
&& groupmod -g 1000 www-data \
|
|
&& apk del .shadow-deps
|