Refactor the PHP 7 Dockerfile
This commit is contained in:
		| @@ -1,41 +1,60 @@ | ||||
| FROM php:7.0-fpm | ||||
| # | ||||
| #-------------------------------------------------------------------------- | ||||
| # Image Setup | ||||
| #-------------------------------------------------------------------------- | ||||
| # | ||||
|  | ||||
| MAINTAINER Mahmoud Zalt <mahmoud@zalt.me> | ||||
| FROM php:7.0-fpm | ||||
|  | ||||
| ADD ./laravel.ini /usr/local/etc/php/conf.d | ||||
| ADD ./laravel.pool.conf /usr/local/etc/php-fpm.d/ | ||||
|  | ||||
| RUN apt-get update && apt-get install -y \ | ||||
|     libpq-dev \ | ||||
|     libmemcached-dev \ | ||||
| RUN apt-get update | ||||
|  | ||||
| # | ||||
| #-------------------------------------------------------------------------- | ||||
| # Software's Installation | ||||
| #-------------------------------------------------------------------------- | ||||
| # | ||||
| # Installing tools and PHP extentions using "apt", "docker-php", "pecl", | ||||
| # | ||||
|  | ||||
| # Install "curl", "libmemcached-dev", "libpq-dev", "libjpeg-dev", | ||||
| #         "libpng12-dev", "libfreetype6-dev", "libssl-dev", "libmcrypt-dev", | ||||
| RUN apt-get install -y --no-install-recommends \ | ||||
|     curl \ | ||||
|     libmemcached-dev \ | ||||
|     libpq-dev \ | ||||
|     libjpeg-dev \ | ||||
|     libpng12-dev \ | ||||
|     libfreetype6-dev \ | ||||
|     libssl-dev \ | ||||
|     libmcrypt-dev \ | ||||
|     --no-install-recommends \ | ||||
|     && rm -r /var/lib/apt/lists/* | ||||
|     libmcrypt-dev | ||||
|  | ||||
| # install mcrypt library | ||||
| # Install the PHP mcrypt extention | ||||
| RUN docker-php-ext-install mcrypt | ||||
|  | ||||
| # Install mongodb driver | ||||
| # Install the PHP pdo_mysql extention | ||||
| RUN docker-php-ext-install pdo_mysql | ||||
|  | ||||
| # Install the PHP pdo_pgsql extention | ||||
| RUN docker-php-ext-install pdo_pgsql | ||||
|  | ||||
| # Install the PHP gd library | ||||
| RUN docker-php-ext-install gd \ | ||||
|     && docker-php-ext-configure gd \ | ||||
|         --enable-gd-native-ttf \ | ||||
|         --with-jpeg-dir=/usr/lib \ | ||||
|         --with-freetype-dir=/usr/include/freetype2 | ||||
|  | ||||
| # Install the mongodb extention | ||||
| RUN pecl install mongodb | ||||
|  | ||||
| # configure gd library | ||||
| RUN docker-php-ext-configure gd \ | ||||
|     --enable-gd-native-ttf \ | ||||
|     --with-jpeg-dir=/usr/lib \ | ||||
|     --with-freetype-dir=/usr/include/freetype2 | ||||
| # Install the xdebug extention | ||||
| RUN pecl install xdebug \ | ||||
|     && docker-php-ext-enable xdebug | ||||
|  | ||||
| # Install extensions using the helper script provided by the base image | ||||
| RUN docker-php-ext-install \ | ||||
|     pdo_mysql \ | ||||
|     pdo_pgsql \ | ||||
|     gd | ||||
|  | ||||
| # Install Memcached for php 7 | ||||
| # Install the memcached extention | ||||
| RUN 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 \ | ||||
| @@ -50,9 +69,13 @@ RUN curl -L -o /tmp/memcached.tar.gz "https://github.com/php-memcached-dev/php-m | ||||
|     && rm /tmp/memcached.tar.gz \ | ||||
|     && docker-php-ext-enable memcached | ||||
|  | ||||
| # Install xdebug | ||||
| RUN pecl install xdebug \ | ||||
|     && docker-php-ext-enable xdebug | ||||
| # | ||||
| #-------------------------------------------------------------------------- | ||||
| # Final Touch | ||||
| #-------------------------------------------------------------------------- | ||||
| # | ||||
|  | ||||
| RUN rm -r /var/lib/apt/lists/* | ||||
|  | ||||
| RUN usermod -u 1000 www-data | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Mahmoud Zalt
					Mahmoud Zalt