|
1 | 1 | FROM php:7.1-fpm |
2 | 2 | MAINTAINER Stepanov Nikolai < [email protected]> |
3 | | -RUN apt-get update |
4 | 3 |
|
5 | | -# Install locale |
6 | 4 | ARG TZ=UTC |
7 | 5 | ENV TZ ${TZ} |
8 | | -RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone \ |
9 | | - && apt-get install -f -y --reinstall locales && locale-gen en_US.UTF-8 |
10 | 6 |
|
11 | | - |
12 | | -# INSTALL EXTENSIONS |
13 | | - |
14 | | -# apcu |
15 | | -RUN pecl install apcu |
16 | | -RUN echo "extension=apcu.so" > /usr/local/etc/php/conf.d/apcu.ini |
17 | | - |
18 | | -# bz2 |
19 | | -RUN apt-get install -y libbz2-dev |
20 | | -RUN docker-php-ext-install bz2 |
21 | | - |
22 | | -# gd |
23 | | -RUN apt-get install -y libfreetype6-dev libjpeg62-turbo-dev libpng12-dev |
24 | | -RUN docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ |
25 | | -RUN docker-php-ext-install gd |
26 | | - |
27 | | -# mcrypt |
28 | | -RUN apt-get install -y libmcrypt-dev |
29 | | -RUN docker-php-ext-install mcrypt |
30 | | - |
31 | | -# pdo |
32 | | -RUN docker-php-ext-install pdo_mysql \ |
33 | | - && apt-get install -y libpq-dev \ |
34 | | - && docker-php-ext-install pdo_pgsql \ |
35 | | - && apt-get install -y libsqlite3-dev \ |
36 | | - && docker-php-ext-install pdo_sqlite |
37 | | - |
38 | | -# phpredis |
39 | | -RUN pecl install -o -f redis \ |
40 | | - && rm -rf /tmp/pear \ |
41 | | - && echo "extension=redis.so" > /usr/local/etc/php/conf.d/redis.ini |
42 | | - |
43 | | -# xsl |
44 | | -RUN apt-get install -y libxslt-dev |
45 | | -RUN docker-php-ext-install xsl |
46 | | - |
47 | | -# intl |
48 | | -RUN apt-get install -y libicu-dev |
49 | | -RUN pecl install intl |
50 | | -RUN docker-php-ext-install intl |
51 | | - |
52 | | -# zip |
53 | | -RUN apt-get install -y zlib1g-dev \ |
54 | | - && docker-php-ext-install zip |
55 | | - |
56 | | -# xdebug |
57 | | -RUN pecl install xdebug \ |
| 7 | +# preconf enviroment |
| 8 | +ENV PHP_EXTRA_CONFIGURE_ARGS --enable-fpm --with-fpm-user=www-data --with-fpm-group=www-data |
| 9 | +RUN usermod -u 1000 -d /data -s /bin/bash www-data \ |
| 10 | + && mkdir /data && chmod -R 644 /data && find /data -type d -exec chmod 755 {} \; |
| 11 | + |
| 12 | +RUN apt-get update \ |
| 13 | + && ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone \ |
| 14 | + && apt-get install -f -y --reinstall locales && locale-gen en_US.UTF-8 \ |
| 15 | + # INSTALL LIBS FOR EXTENSIONS |
| 16 | + # bz2 |
| 17 | + && apt-get install -y libbz2-dev \ |
| 18 | + # gd |
| 19 | + && apt-get install -y libfreetype6-dev libjpeg62-turbo-dev libpng12-dev \ |
| 20 | + # mcrypt |
| 21 | + && apt-get install -y libmcrypt-dev \ |
| 22 | + # pdo |
| 23 | + && apt-get install -y libpq-dev libsqlite3-dev \ |
| 24 | + #xsl |
| 25 | + && apt-get install -y libxslt-dev \ |
| 26 | + # intl |
| 27 | + && apt-get install -y libicu-dev \ |
| 28 | + # zip |
| 29 | + && apt-get install -y zlib1g-dev \ |
| 30 | + # Other soft |
| 31 | + && apt-get install -y msmtp imagemagick libssl-dev libxml2-dev wget git vim ruby ruby-dev libcurl4-openssl-dev \ |
| 32 | + # INSTALL EXTENSIONS |
| 33 | + # apcu |
| 34 | + && pecl install apcu \ |
| 35 | + && echo "extension=apcu.so" > /usr/local/etc/php/conf.d/apcu.ini \ |
| 36 | + # phpredis |
| 37 | + && pecl install -o -f redis \ |
| 38 | + && rm -rf /tmp/pear \ |
| 39 | + && echo "extension=redis.so" > /usr/local/etc/php/conf.d/redis.ini \ |
| 40 | + # intl |
| 41 | + && pecl install intl && docker-php-ext-install intl \ |
| 42 | + # xdebug |
| 43 | + && pecl install xdebug \ |
58 | 44 | && echo "zend_extension=$(find /usr/local/lib/php/extensions/ -name xdebug.so)\n" >> /usr/local/etc/php/conf.d/xdebug.ini \ |
59 | 45 | && echo "xdebug.remote_enable=1" >> /usr/local/etc/php/conf.d/xdebug.ini \ |
60 | 46 | && echo "xdebug.remote_autostart=0" >> /usr/local/etc/php/conf.d/xdebug.ini \ |
61 | 47 | && echo "xdebug.remote_connect_back=1" >> /usr/local/etc/php/conf.d/xdebug.ini \ |
62 | | - |
63 | | -# common |
64 | | -RUN docker-php-ext-install opcache calendar dba pcntl bcmath mbstring xmlrpc ftp shmop |
65 | | - |
66 | | - |
67 | | -# preconf enviroment |
68 | | -ENV PHP_EXTRA_CONFIGURE_ARGS --enable-fpm --with-fpm-user=www-data --with-fpm-group=www-data |
69 | | -RUN usermod -u 1000 -d /data -s /bin/bash www-data |
70 | | -RUN mkdir /data && chmod -R 644 /data && find /data -type d -exec chmod 755 {} \; |
71 | | - |
72 | | -RUN apt-get install -y \ |
73 | | - libfreetype6-dev \ |
74 | | - libjpeg62-turbo-dev \ |
75 | | - libmcrypt-dev \ |
76 | | - libpng12-dev \ |
77 | | - msmtp \ |
78 | | - imagemagick \ |
79 | | - libssl-dev \ |
80 | | - libxml2-dev \ |
81 | | - libicu-dev \ |
82 | | - libxslt-dev \ |
83 | | - wget git vim ruby ruby-dev libcurl4-openssl-dev |
84 | | - |
85 | | -# Clean apt |
86 | | -RUN apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* |
| 48 | + # gd |
| 49 | + && docker-php-ext-configure gd --with-freetype-dir=/usr/include/ --with-jpeg-dir=/usr/include/ \ |
| 50 | + && docker-php-ext-install gd \ |
| 51 | + # other |
| 52 | + && docker-php-ext-install bz2 mcrypt pdo_mysql pdo_pgsql pdo_sqlite xsl zip \ |
| 53 | + opcache calendar dba pcntl bcmath mbstring xmlrpc ftp shmop \ |
| 54 | + && apt-get clean && rm -rf /var/lib/apt/lists/* /tmp/* /var/tmp/* |
87 | 55 |
|
88 | 56 | COPY etc/php-fpm.conf /usr/local/etc/ |
89 | 57 | COPY etc/php.ini /usr/local/etc/php/ |
|
0 commit comments