Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- ARG NODE_VERSION=18.16.0
- FROM node:${NODE_VERSION}-alpine AS node
- FROM php:7.4-fpm-alpine as base
- ARG project_root=.
- COPY --from=node /usr/lib /usr/lib
- COPY --from=node /usr/local/lib /usr/local/lib
- COPY --from=node /usr/local/include /usr/local/include
- COPY --from=node /usr/local/bin /usr/local/bin
- RUN node -v
- RUN apk add --no-cache tzdata
- ENV TZ=Europe/Prague
- # freetype-dev needed by "gd" extension
- # icu-dev needed by "intl" extension
- # libjpeg-turbo-dev needed by "gd" extension
- # libpng-dev needed by "gd" extension
- # libzip-dev needed by "zip" extension
- # git needed by smyfony/flex
- RUN apk add --update \
- autoconf \
- automake \
- dos2unix \
- freetype-dev \
- g++ \
- icu-dev \
- libjpeg-turbo-dev \
- libpng-dev \
- libtool \
- libzip-dev \
- make \
- nasm \
- npm \
- git \
- yarn
- # install Composer
- COPY ${project_root}/docker/php-fpm/docker-install-composer /usr/local/bin/docker-install-composer
- RUN dos2unix /usr/local/bin/docker-install-composer \
- && chmod +x /usr/local/bin/docker-install-composer \
- && docker-install-composer
- # "zip" extension warns about deprecation if we do not use a system library
- RUN docker-php-ext-configure zip
- # "gd" extension needs to have specified jpeg and freetype dir for jpg/jpeg images support
- RUN docker-php-ext-configure gd --with-freetype --with-jpeg
- # install necessary PHP extensions requested by Composer
- RUN docker-php-ext-install \
- bcmath \
- gd \
- intl \
- opcache \
- pdo_mysql \
- zip
- #RUN pecl install apcu-5.1.5 \
- # && docker-php-ext-enable apcu
- #RUN pecl install xdebug \
- # && docker-php-ext-enable xdebug
- # install locales and switch to en_US.utf8 in order to enable UTF-8 support
- # see https://github.com/docker-library/php/issues/240#issuecomment-305038173
- RUN apk add --update --no-cache --repository http://dl-cdn.alpinelinux.org/alpine/edge/community gnu-libiconv
- ENV LD_PRELOAD /usr/lib/preloadable_libiconv.so php
- ENV LC_ALL=en_US.utf8 LANG=en_US.utf8 LANGUAGE=en_US.utf8
- # Setup www-data user and group
- ARG www_data_uid
- ARG www_data_gid
- RUN if [ -n "$www_data_uid" ]; \
- then \
- deluser www-data \
- && (addgroup -g $www_data_gid www-data || addgroup -g 82 www-data) \
- && adduser -u $www_data_uid -D -S -G www-data www-data; \
- fi; \
- chown -R www-data:www-data /home/www-data /var/www/html
- USER www-data
- COPY ${project_root}/docker/php-fpm/php.ini /usr/local/etc/php/php.ini
- # Give owner rights to the current user
- #RUN chown -Rh www-data:www-data /var/www/html/node_modules
- # Install (local) Yarn packages and build
- #RUN yarn
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement