summaryrefslogtreecommitdiff
path: root/php-fpm/Dockerfile-70
diff options
context:
space:
mode:
Diffstat (limited to 'php-fpm/Dockerfile-70')
-rw-r--r--php-fpm/Dockerfile-70205
1 files changed, 205 insertions, 0 deletions
diff --git a/php-fpm/Dockerfile-70 b/php-fpm/Dockerfile-70
new file mode 100644
index 0000000..93deeae
--- /dev/null
+++ b/php-fpm/Dockerfile-70
@@ -0,0 +1,205 @@
+#
+#--------------------------------------------------------------------------
+# Image Setup
+#--------------------------------------------------------------------------
+#
+# To edit the 'php-fpm' base Image, visit its repository on Github
+# https://github.com/LaraDock/php-fpm
+#
+# To change its version, see the available Tags on the Docker Hub:
+# https://hub.docker.com/r/laradock/php-fpm/tags/
+#
+
+FROM laradock/php-fpm:7.0--1.2
+
+MAINTAINER Mahmoud Zalt <mahmoud@zalt.me>
+
+#
+#--------------------------------------------------------------------------
+# Mandatory Software's Installation
+#--------------------------------------------------------------------------
+#
+# Mandatory Software's such as ("mcrypt", "pdo_mysql", "libssl-dev", ....)
+# are installed on the base image 'laradock/php-fpm' image. If you want
+# to add more Software's or remove existing one, you need to edit the
+# base image (https://github.com/LaraDock/php-fpm).
+#
+
+#
+#--------------------------------------------------------------------------
+# Optional Software's Installation
+#--------------------------------------------------------------------------
+#
+# Optional Software's will only be installed if you set them to `true`
+# in the `docker-compose.yml` before the build.
+# Example:
+# - INSTALL_ZIP_ARCHIVE=true
+# - ...
+#
+
+#####################################
+# SOAP:
+#####################################
+
+ARG INSTALL_SOAP=false
+RUN if [ ${INSTALL_SOAP} = true ]; then \
+ # Install the soap extension
+ apt-get -y update && \
+ apt-get -y install libxml2-dev php-soap && \
+ docker-php-ext-install soap \
+;fi
+
+#####################################
+# xDebug:
+#####################################
+
+ARG INSTALL_XDEBUG=false
+RUN if [ ${INSTALL_XDEBUG} = true ]; then \
+ # Install the xdebug extension
+ pecl install xdebug && \
+ docker-php-ext-enable xdebug \
+;fi
+
+#####################################
+# PHP REDIS EXTENSION FOR PHP 7.0
+#####################################
+ARG INSTALL_PHPREDIS=false
+RUN if [ ${INSTALL_PHPREDIS} = true ]; then \
+ # Install Php Redis Extension
+ pecl install -o -f redis \
+ && rm -rf /tmp/pear \
+ && docker-php-ext-enable redis \
+;fi
+
+# Copy xdebug configration for remote debugging
+COPY ./xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
+
+#####################################
+# MongoDB:
+#####################################
+
+ARG INSTALL_MONGO=false
+RUN if [ ${INSTALL_MONGO} = true ]; then \
+ # Install the mongodb extension
+ pecl install mongodb && \
+ docker-php-ext-enable mongodb \
+;fi
+
+#####################################
+# ZipArchive:
+#####################################
+
+ARG INSTALL_ZIP_ARCHIVE=false
+RUN if [ ${INSTALL_ZIP_ARCHIVE} = true ]; then \
+ # Install the zip extension
+ pecl install zip && \
+ docker-php-ext-enable zip \
+;fi
+
+#####################################
+# bcmath:
+#####################################
+
+ARG INSTALL_BCMATH=false
+RUN if [ ${INSTALL_BCMATH} = true ]; then \
+ # Install the bcmath extension
+ docker-php-ext-install bcmath \
+;fi
+
+#####################################
+# PHP Memcached:
+#####################################
+
+ARG INSTALL_MEMCACHED=false
+RUN if [ ${INSTALL_MEMCACHED} = true ]; then \
+ # Install the php memcached extension
+ curl -L -o /tmp/memcached.tar.gz "https://github.com/php-memcached-dev/php-memcached/archive/php7.tar.gz" \
+ && mkdir -p memcached \
+ && tar -C memcached -zxvf /tmp/memcached.tar.gz --strip 1 \
+ && ( \
+ cd memcached \
+ && phpize \
+ && ./configure \
+ && make -j$(nproc) \
+ && make install \
+ ) \
+ && rm -r memcached \
+ && rm /tmp/memcached.tar.gz \
+ && docker-php-ext-enable memcached \
+;fi
+
+#####################################
+# Exif:
+#####################################
+
+ARG INSTALL_EXIF=false
+RUN if [ ${INSTALL_EXIF} = true ]; then \
+ # Enable Exif PHP extentions requirements
+ docker-php-ext-install exif && \
+ docker-php-ext-enable exif \
+;fi
+
+
+#####################################
+# PHP Aerospike:
+#####################################
+
+ARG INSTALL_AEROSPIKE_EXTENSION=false
+ENV INSTALL_AEROSPIKE_EXTENSION ${INSTALL_AEROSPIKE_EXTENSION}
+# Copy aerospike configration for remote debugging
+COPY ./aerospike.ini /usr/local/etc/php/conf.d/aerospike.ini
+RUN if [ ${INSTALL_AEROSPIKE_EXTENSION} = true ]; then \
+ # Install the php aerospike extension
+ curl -L -o /tmp/aerospike-client-php.tar.gz "https://github.com/luciano-jr/aerospike-client-php/archive/master.tar.gz" \
+ && mkdir -p aerospike-client-php \
+ && tar -C aerospike-client-php -zxvf /tmp/aerospike-client-php.tar.gz --strip 1 \
+ && ( \
+ cd aerospike-client-php/src/aerospike \
+ && phpize \
+ && ./build.sh \
+ && make install \
+ ) \
+ && rm /tmp/aerospike-client-php.tar.gz \
+;fi
+
+#####################################
+# Opcache:
+#####################################
+ARG INSTALL_OPCACHE=false
+RUN if [ ${INSTALL_OPCACHE} = true ]; then \
+ docker-php-ext-install opcache && \
+ docker-php-ext-enable opcache \
+;fi
+
+# Copy opcache configration
+COPY ./opcache.ini /usr/local/etc/php/conf.d/opcache.ini
+
+#####################################
+# Codeigniter Modifications:
+#####################################
+
+ARG CODEIGNITER=false
+RUN if [ ${CODEIGNITER} = true ]; then \
+ # Install Codeigniter PHP extentions requirements
+ docker-php-ext-install mysqli && \
+ docker-php-ext-install tokenizer \
+;fi
+
+#
+#--------------------------------------------------------------------------
+# Final Touch
+#--------------------------------------------------------------------------
+#
+
+ADD ./laravel.ini /usr/local/etc/php/conf.d
+ADD ./laravel.pool.conf /usr/local/etc/php-fpm.d/
+
+RUN rm -r /var/lib/apt/lists/*
+
+RUN usermod -u 1000 www-data
+
+WORKDIR /var/www
+
+CMD ["php-fpm"]
+
+EXPOSE 9000