| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071 |
- # ./docker/php/Dockerfile
- FROM php:7.0.33-fpm
- ARG COMPOSER_HASH
- ARG OS
- RUN sed 's/main$/main universe/' -i /etc/apt/sources.list; \
- apt-get update; \
- ### WKHTMLTOPDF
- if [ "x$OS" = "MAC" ] ; then apt-get install -y --no-install-recommends build-essential xorg iputils-ping libssl-dev libxrender-dev wget gdebi ca-certificates wget xz-utils libxrender1 libxt6 libxtst6 fontconfig zlib1g-dev libpng-dev libicu-dev g++; \
- else DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y build-essential xorg iputils-ping libssl-dev libxrender-dev wget gdebi ca-certificates wget xz-utils libxrender1 libxt6 libxtst6 fontconfig zlib1g-dev libpng-dev libicu-dev g++; \
- fi; \
- wget http://security.debian.org/debian-security/pool/updates/main/o/openssl/libssl1.0.0_1.0.1t-1+deb8u12_amd64.deb; \
- dpkg -i libssl1.0.0_1.0.1t-1+deb8u12_amd64.deb; \
- wget http://ftp.de.debian.org/debian/pool/main/libp/libpng/libpng12-0_1.2.50-2+deb8u3_amd64.deb; \
- dpkg -i libpng12-0_1.2.50-2+deb8u3_amd64.deb; \
- dpkg -i libpng12-0_1.2.50-2+deb8u3_amd64.deb; \
- wget https://github.com/wkhtmltopdf/wkhtmltopdf/releases/download/0.12.5/wkhtmltox_0.12.5-1.jessie_amd64.deb; \
- dpkg -i wkhtmltox_0.12.5-1.jessie_amd64.deb; \
- ## ELASTICADUMP
- curl -sL https://deb.nodesource.com/setup_10.x | sudo -E bash; - \
- apt-get install nodejs -y; \
- npm install elasticdump@3.3.7 -g; \
- ## COMPOSER
- php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"; \
- php -r "if (hash_file('sha384', 'composer-setup.php') === '$COMPOSER_HASH') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"; \
- php composer-setup.php; \
- php -r "unlink('composer-setup.php');"; \
- mv composer.phar /usr/local/bin/composer; \
- ## GIT, NANO, ACL, PROPCS, LIBZIP, IMAGICK
- apt-get install -y --no-install-recommends git nano acl procps libzip-dev zip libmagickwand-dev imagemagick libtidy-dev; \
- ## OP CACHE, PDO, BC MATH, CALENDAR, TODY
- docker-php-ext-configure zip --with-libzip; \
- docker-php-ext-configure intl; \
- docker-php-ext-install opcache pdo_mysql mbstring exif bcmath calendar gd intl tidy zip; \
- docker-php-ext-enable exif; \
- docker-php-ext-enable tidy; \
- # IMAGICK
- pecl install imagick-3.4.3RC2; \
- docker-php-ext-enable imagick; \
- ## APCU
- pecl install apcu-5.1.17; \
- pecl install apcu_bc;
- ######## BLACKFIRE #########
- # If you use Alpine, you need to set this value to "alpine"
- ENV current_os=linux
- RUN version=$(php -r "echo PHP_MAJOR_VERSION.PHP_MINOR_VERSION;"); \
- curl -A "Docker" -o /tmp/blackfire-probe.tar.gz -D - -L -s https://blackfire.io/api/v1/releases/probe/php/$current_os/amd64/$version; \
- mkdir -p /tmp/blackfire; \
- tar zxpf /tmp/blackfire-probe.tar.gz -C /tmp/blackfire; \
- mv /tmp/blackfire/blackfire-*.so $(php -r "echo ini_get('extension_dir');")/blackfire.so; \
- printf "extension=blackfire.so\nblackfire.agent_socket=tcp://blackfire:8707\n" > $PHP_INI_DIR/conf.d/blackfire.ini; \
- rm -rf /tmp/blackfire /tmp/blackfire-probe.tar.gz;
- ######## BLACKFIRE #########
- COPY /.ssh /root/.ssh
- COPY /docker/php/conf/memory.ini /usr/local/etc/php/conf.d
- COPY /docker/php/conf/apc.ini /usr/local/etc/php/conf.d
- COPY /docker/php/conf/execution_time.ini /usr/local/etc/php/conf.d
- WORKDIR /var/www/html
- CMD if [ "x$OS" = "MAC" ] ; then HTTPDUSER=$(ps axo user,comm | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\ -f1); \
- setfacl -dR -m u:"$HTTPDUSER":rwX -m u:$(whoami):rwX app/cache app/logs && setfacl -R -m u:"$HTTPDUSER":rwX -m u:$(whoami):rwX app/cache app/logs; \
- chown -R www-data:www-data /var/www/html/web; \
- php-fpm; \
- else HTTPDUSER=$(ps axo user,comm | grep -E '[a]pache|[h]ttpd|[_]www|[w]ww-data|[n]ginx' | grep -v root | head -1 | cut -d\ -f1); \
- setfacl -dR -m u:"$HTTPDUSER":rwX -m u:$(whoami):rwX app/cache app/logs && setfacl -R -m u:"$HTTPDUSER":rwX -m u:$(whoami):rwX app/cache app/logs;\
- php-fpm; \
- fi;
|