PHP 7+ only
parent
53015a7fc1
commit
2d023d0cd4
|
@ -1 +0,0 @@
|
|||
.idea/
|
|
@ -1,4 +0,0 @@
|
|||
mirror_github:
|
||||
stage: deploy
|
||||
script:
|
||||
- git push --mirror git@github.com:OzConseil/docker-php.git
|
|
@ -1,5 +0,0 @@
|
|||
FROM ozconseil/php:5.4-apache
|
||||
MAINTAINER ozconseil <team-dev@ozconseil.com>
|
||||
|
||||
COPY xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
|
||||
RUN pecl install xdebug-beta && docker-php-ext-enable xdebug
|
|
@ -1,37 +0,0 @@
|
|||
FROM php:5.4-apache
|
||||
MAINTAINER ozconseil <team-dev@ozconseil.com>
|
||||
|
||||
RUN a2enmod rewrite
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
g++ \
|
||||
imagemagick \
|
||||
libbz2-dev \
|
||||
libfreetype6-dev \
|
||||
libicu-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libmcrypt-dev \
|
||||
libpng12-dev \
|
||||
libpq-dev \
|
||||
libxslt1-dev \
|
||||
libzip-dev \
|
||||
zlib1g-dev \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN mkdir /usr/include/freetype2/freetype && ln -s /usr/include/freetype2/freetype.h /usr/include/freetype2/freetype/freetype.h
|
||||
|
||||
RUN docker-php-ext-configure gd --with-jpeg-dir --with-freetype-dir --enable-gd-native-ttf \
|
||||
&& docker-php-ext-install \
|
||||
bz2 \
|
||||
gd \
|
||||
exif \
|
||||
intl \
|
||||
mbstring \
|
||||
mcrypt \
|
||||
mysqli \
|
||||
mysql \
|
||||
pdo_mysql \
|
||||
xsl \
|
||||
zip
|
||||
|
||||
RUN echo "date.timezone = \"Europe/Paris\"" > /usr/local/etc/php/conf.d/timezone.ini
|
|
@ -1,34 +0,0 @@
|
|||
FROM ozconseil/php:5.4-apache
|
||||
MAINTAINER ozconseil <team-dev@ozconseil.com>
|
||||
|
||||
# Install Nodejs, Git, ssh & mysql clients
|
||||
RUN cd /tmp && curl -sL https://deb.nodesource.com/setup_4.x | bash -
|
||||
RUN apt-get update && apt-get install -y \
|
||||
git \
|
||||
openssh-client \
|
||||
mysql-client \
|
||||
nodejs \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
RUN npm install npm -g
|
||||
|
||||
# Install Composer
|
||||
RUN curl -sS https://getcomposer.org/installer \
|
||||
| php -- --install-dir=/usr/local/bin --filename=composer \
|
||||
&& mkdir -p /var/www/composer-cache \
|
||||
&& chmod 777 /var/www/composer-cache \
|
||||
&& composer config -g cache-dir /var/www/composer-cache
|
||||
|
||||
WORKDIR /var/www
|
||||
|
||||
# npm deps
|
||||
ONBUILD COPY package.json /var/www/
|
||||
ONBUILD RUN npm install --unsafe-perm
|
||||
|
||||
# Composer deps
|
||||
ONBUILD COPY auth.json /var/www/
|
||||
ONBUILD COPY composer.json /var/www/
|
||||
ONBUILD COPY composer.lock /var/www/
|
||||
ONBUILD RUN composer install --prefer-dist --no-progress --no-dev -o
|
||||
|
||||
# custom code
|
||||
ONBUILD COPY . /var/www/
|
|
@ -1,5 +0,0 @@
|
|||
FROM ozconseil/php:5.5-apache
|
||||
MAINTAINER ozconseil <team-dev@ozconseil.com>
|
||||
|
||||
COPY xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
|
||||
RUN pecl install xdebug-beta && docker-php-ext-enable xdebug
|
|
@ -1,48 +0,0 @@
|
|||
FROM php:5.5-apache
|
||||
MAINTAINER ozconseil <team-dev@ozconseil.com>
|
||||
|
||||
RUN a2enmod rewrite
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
g++ \
|
||||
imagemagick \
|
||||
libbz2-dev \
|
||||
libfreetype6-dev \
|
||||
libicu-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libmcrypt-dev \
|
||||
libpng12-dev \
|
||||
libpq-dev \
|
||||
libxslt1-dev \
|
||||
libzip-dev \
|
||||
zlib1g-dev \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN mkdir /usr/include/freetype2/freetype && ln -s /usr/include/freetype2/freetype.h /usr/include/freetype2/freetype/freetype.h
|
||||
|
||||
RUN docker-php-ext-configure gd --with-jpeg-dir --with-freetype-dir --enable-gd-native-ttf \
|
||||
&& docker-php-ext-install \
|
||||
bz2 \
|
||||
gd \
|
||||
exif \
|
||||
intl \
|
||||
mbstring \
|
||||
mcrypt \
|
||||
mysqli \
|
||||
mysql \
|
||||
opcache \
|
||||
pdo_mysql \
|
||||
xsl \
|
||||
zip
|
||||
|
||||
# set recommended PHP.ini settings
|
||||
# see https://secure.php.net/manual/en/opcache.installation.php
|
||||
RUN { \
|
||||
echo 'opcache.memory_consumption=128'; \
|
||||
echo 'opcache.interned_strings_buffer=8'; \
|
||||
echo 'opcache.max_accelerated_files=4000'; \
|
||||
echo 'opcache.revalidate_freq=60'; \
|
||||
echo 'opcache.fast_shutdown=1'; \
|
||||
echo 'opcache.enable_cli=0'; \
|
||||
} > /usr/local/etc/php/conf.d/opcache-recommended.ini
|
||||
RUN echo "date.timezone = \"Europe/Paris\"" > /usr/local/etc/php/conf.d/timezone.ini
|
|
@ -1,42 +0,0 @@
|
|||
FROM php:5.5-cli
|
||||
MAINTAINER ozconseil <team-dev@ozconseil.com>
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
g++ \
|
||||
git \
|
||||
imagemagick \
|
||||
libbz2-dev \
|
||||
libfreetype6-dev \
|
||||
libicu-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libmcrypt-dev \
|
||||
libpng12-dev \
|
||||
libpq-dev \
|
||||
libxslt1-dev \
|
||||
libzip-dev \
|
||||
mysql-client \
|
||||
openssh-client \
|
||||
zlib1g-dev \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN mkdir /usr/include/freetype2/freetype && ln -s /usr/include/freetype2/freetype.h /usr/include/freetype2/freetype/freetype.h
|
||||
|
||||
RUN docker-php-ext-configure gd --with-jpeg-dir --with-freetype-dir --enable-gd-native-ttf \
|
||||
&& docker-php-ext-install \
|
||||
bz2 \
|
||||
gd \
|
||||
exif \
|
||||
intl \
|
||||
mbstring \
|
||||
mcrypt \
|
||||
mysqli \
|
||||
mysql \
|
||||
pdo_mysql \
|
||||
xsl \
|
||||
zip
|
||||
|
||||
RUN echo "date.timezone = \"Europe/Paris\"" > /usr/local/etc/php/conf.d/timezone.ini
|
||||
RUN echo "memory_limit=-1" > /usr/local/etc/php/conf.d/memory-limit.ini
|
||||
RUN echo "zend.enable_gc=0" > /usr/local/etc/php/conf.d/disable-gc.ini
|
||||
|
||||
RUN curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer
|
|
@ -1,5 +0,0 @@
|
|||
FROM ozconseil/php:5.6-apache
|
||||
MAINTAINER ozconseil <team-dev@ozconseil.com>
|
||||
|
||||
COPY xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
|
||||
RUN pecl install xdebug-beta && docker-php-ext-enable xdebug
|
|
@ -1,48 +0,0 @@
|
|||
FROM php:5.6-apache
|
||||
MAINTAINER ozconseil <team-dev@ozconseil.com>
|
||||
|
||||
RUN a2enmod rewrite
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
g++ \
|
||||
imagemagick \
|
||||
libbz2-dev \
|
||||
libfreetype6-dev \
|
||||
libicu-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libmcrypt-dev \
|
||||
libpng12-dev \
|
||||
libpq-dev \
|
||||
libxslt1-dev \
|
||||
libzip-dev \
|
||||
zlib1g-dev \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN mkdir /usr/include/freetype2/freetype && ln -s /usr/include/freetype2/freetype.h /usr/include/freetype2/freetype/freetype.h
|
||||
|
||||
RUN docker-php-ext-configure gd --with-jpeg-dir --with-freetype-dir --enable-gd-native-ttf \
|
||||
&& docker-php-ext-install \
|
||||
bz2 \
|
||||
gd \
|
||||
exif \
|
||||
intl \
|
||||
mbstring \
|
||||
mcrypt \
|
||||
mysqli \
|
||||
mysql \
|
||||
opcache \
|
||||
pdo_mysql \
|
||||
xsl \
|
||||
zip
|
||||
|
||||
# set recommended PHP.ini settings
|
||||
# see https://secure.php.net/manual/en/opcache.installation.php
|
||||
RUN { \
|
||||
echo 'opcache.memory_consumption=128'; \
|
||||
echo 'opcache.interned_strings_buffer=8'; \
|
||||
echo 'opcache.max_accelerated_files=4000'; \
|
||||
echo 'opcache.revalidate_freq=60'; \
|
||||
echo 'opcache.fast_shutdown=1'; \
|
||||
echo 'opcache.enable_cli=0'; \
|
||||
} > /usr/local/etc/php/conf.d/opcache-recommended.ini
|
||||
RUN echo "date.timezone = \"Europe/Paris\"" > /usr/local/etc/php/conf.d/timezone.ini
|
|
@ -0,0 +1,5 @@
|
|||
FROM louisbl/php:7.0-apache
|
||||
MAINTAINER louisbl <louisbl@beltramo.me>
|
||||
|
||||
COPY xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
|
||||
RUN pecl install xdebug && docker-php-ext-enable xdebug
|
|
@ -1,5 +1,5 @@
|
|||
FROM php:5.6-fpm
|
||||
MAINTAINER ozconseil <team-dev@ozconseil.com>
|
||||
FROM php:7.0-fpm
|
||||
MAINTAINER louisbl <louisbl@beltramo.me>
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
g++ \
|
||||
|
@ -19,7 +19,7 @@ RUN apt-get update && apt-get install -y \
|
|||
|
||||
RUN mkdir /usr/include/freetype2/freetype && ln -s /usr/include/freetype2/freetype.h /usr/include/freetype2/freetype/freetype.h
|
||||
|
||||
RUN pecl install apcu-4.0.11 \
|
||||
RUN pecl install apcu \
|
||||
&& docker-php-ext-enable apcu
|
||||
|
||||
RUN docker-php-ext-configure gd --with-jpeg-dir --with-freetype-dir --enable-gd-native-ttf \
|
||||
|
@ -104,13 +104,7 @@ RUN { \
|
|||
|
||||
RUN a2enmod proxy_fcgi
|
||||
|
||||
RUN apt-get update && apt-get install -y apt-transport-https
|
||||
RUN curl https://repo.varnish-cache.org/debian/GPG-key.txt | apt-key add -
|
||||
RUN echo "deb https://repo.varnish-cache.org/debian/ jessie varnish-4.1" >> /etc/apt/sources.list.d/varnish-cache.list \
|
||||
&& apt-get update \
|
||||
&& apt-get install -y varnish
|
||||
|
||||
COPY apache2-foreground /usr/local/bin/
|
||||
WORKDIR /var/www/html
|
||||
EXPOSE 80 6081
|
||||
EXPOSE 80
|
||||
CMD ["apache2-foreground"]
|
|
@ -1,5 +1,5 @@
|
|||
FROM php:5.4-cli
|
||||
MAINTAINER ozconseil <team-dev@ozconseil.com>
|
||||
FROM php:7.0-cli
|
||||
MAINTAINER louisbl <louisbl@beltramo.me>
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
g++ \
|
||||
|
@ -30,9 +30,7 @@ RUN docker-php-ext-configure gd --with-jpeg-dir --with-freetype-dir --enable-gd-
|
|||
mbstring \
|
||||
mcrypt \
|
||||
mysqli \
|
||||
mysql \
|
||||
pdo_mysql \
|
||||
xsl \
|
||||
zip
|
||||
|
||||
RUN echo "date.timezone = \"Europe/Paris\"" > /usr/local/etc/php/conf.d/timezone.ini
|
|
@ -1,15 +1,15 @@
|
|||
FROM ozconseil/php:5.5-apache
|
||||
MAINTAINER ozconseil <team-dev@ozconseil.com>
|
||||
FROM louisbl/php:7.0-apache
|
||||
MAINTAINER louisbl <louisbl@beltramo.me>
|
||||
|
||||
# Install Nodejs, Git, ssh & mysql clients
|
||||
RUN cd /tmp && curl -sL https://deb.nodesource.com/setup_4.x | bash -
|
||||
RUN cd /tmp && curl -sL https://deb.nodesource.com/setup_6.x | bash -
|
||||
RUN apt-get update && apt-get install -y \
|
||||
git \
|
||||
openssh-client \
|
||||
mysql-client \
|
||||
nodejs \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
RUN npm install npm -g
|
||||
RUN npm install yarn -g
|
||||
|
||||
# Install Composer
|
||||
RUN curl -sS https://getcomposer.org/installer \
|
||||
|
@ -22,7 +22,7 @@ WORKDIR /var/www
|
|||
|
||||
# npm deps
|
||||
ONBUILD COPY package.json /var/www/
|
||||
ONBUILD RUN npm install --unsafe-perm
|
||||
ONBUILD RUN yarn
|
||||
|
||||
# Composer deps
|
||||
ONBUILD COPY auth.json /var/www/
|
|
@ -1,5 +1,5 @@
|
|||
FROM ozconseil/php:7.0-varnish
|
||||
MAINTAINER ozconseil <team-dev@ozconseil.com>
|
||||
FROM louisbl/php:7.0-varnish
|
||||
MAINTAINER louisbl <louisbl@beltramo.me>
|
||||
|
||||
COPY xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
|
||||
RUN pecl install xdebug && docker-php-ext-enable xdebug
|
||||
|
|
|
@ -1,108 +1,5 @@
|
|||
FROM php:7.0-fpm
|
||||
MAINTAINER ozconseil <team-dev@ozconseil.com>
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
g++ \
|
||||
imagemagick \
|
||||
libbz2-dev \
|
||||
libfreetype6-dev \
|
||||
libicu-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libmcrypt-dev \
|
||||
libpng12-dev \
|
||||
libpq-dev \
|
||||
libxml2-dev \
|
||||
libzip-dev \
|
||||
zlib1g-dev \
|
||||
mysql-client \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN mkdir /usr/include/freetype2/freetype && ln -s /usr/include/freetype2/freetype.h /usr/include/freetype2/freetype/freetype.h
|
||||
|
||||
RUN pecl install apcu \
|
||||
&& docker-php-ext-enable apcu
|
||||
|
||||
RUN docker-php-ext-configure gd --with-jpeg-dir --with-freetype-dir --enable-gd-native-ttf \
|
||||
&& docker-php-ext-configure pdo_mysql --with-pdo-mysql=mysqlnd \
|
||||
&& docker-php-ext-install \
|
||||
bz2 \
|
||||
gd \
|
||||
exif \
|
||||
intl \
|
||||
json \
|
||||
mbstring \
|
||||
mcrypt \
|
||||
xmlrpc \
|
||||
bcmath \
|
||||
opcache \
|
||||
pdo_mysql \
|
||||
mysqli \
|
||||
zip
|
||||
|
||||
# set recommended PHP.ini settings
|
||||
# see https://secure.php.net/manual/en/opcache.installation.php
|
||||
RUN { \
|
||||
echo 'opcache.memory_consumption=128'; \
|
||||
echo 'opcache.interned_strings_buffer=8'; \
|
||||
echo 'opcache.max_accelerated_files=4000'; \
|
||||
echo 'opcache.revalidate_freq=60'; \
|
||||
echo 'opcache.fast_shutdown=1'; \
|
||||
echo 'opcache.enable_cli=0'; \
|
||||
} > /usr/local/etc/php/conf.d/opcache-recommended.ini
|
||||
RUN echo "date.timezone = \"Europe/Paris\"" > /usr/local/etc/php/conf.d/timezone.ini
|
||||
|
||||
RUN apt-get update && apt-get install -y apache2-bin apache2.2-common --no-install-recommends && rm -rf /var/lib/apt/lists/*
|
||||
|
||||
ENV APACHE_CONFDIR /etc/apache2
|
||||
ENV APACHE_ENVVARS $APACHE_CONFDIR/envvars
|
||||
|
||||
RUN set -ex \
|
||||
\
|
||||
# generically convert lines like
|
||||
# export APACHE_RUN_USER=www-data
|
||||
# into
|
||||
# : ${APACHE_RUN_USER:=www-data}
|
||||
# export APACHE_RUN_USER
|
||||
# so that they can be overridden at runtime ("-e APACHE_RUN_USER=...")
|
||||
&& sed -ri 's/^export ([^=]+)=(.*)$/: ${\1:=\2}\nexport \1/' "$APACHE_ENVVARS" \
|
||||
\
|
||||
# setup directories and permissions
|
||||
&& . "$APACHE_ENVVARS" \
|
||||
&& for dir in \
|
||||
"$APACHE_LOCK_DIR" \
|
||||
"$APACHE_RUN_DIR" \
|
||||
"$APACHE_LOG_DIR" \
|
||||
/var/www/html \
|
||||
; do \
|
||||
rm -rvf "$dir" \
|
||||
&& mkdir -p "$dir" \
|
||||
&& chown -R "$APACHE_RUN_USER:$APACHE_RUN_GROUP" "$dir"; \
|
||||
done
|
||||
|
||||
# logs should go to stdout / stderr
|
||||
RUN set -ex \
|
||||
&& . "$APACHE_ENVVARS" \
|
||||
&& ln -sfT /dev/stderr "$APACHE_LOG_DIR/error.log" \
|
||||
&& ln -sfT /dev/stdout "$APACHE_LOG_DIR/access.log" \
|
||||
&& ln -sfT /dev/stdout "$APACHE_LOG_DIR/other_vhosts_access.log"
|
||||
|
||||
# PHP files should be handled by PHP, and should be preferred over any other file type
|
||||
RUN { \
|
||||
echo '<FilesMatch \.php$>'; \
|
||||
echo '\tSetHandler "proxy:fcgi://127.0.0.1:9000"'; \
|
||||
echo '</FilesMatch>'; \
|
||||
echo; \
|
||||
echo 'DirectoryIndex disabled'; \
|
||||
echo 'DirectoryIndex index.php index.html'; \
|
||||
echo; \
|
||||
echo '<Directory /var/www/>'; \
|
||||
echo '\tOptions -Indexes'; \
|
||||
echo '\tAllowOverride All'; \
|
||||
echo '</Directory>'; \
|
||||
} | tee "$APACHE_CONFDIR/conf-available/docker-php.conf" \
|
||||
&& a2enconf docker-php
|
||||
|
||||
RUN a2enmod proxy_fcgi
|
||||
FROM louisbl/php:7.0-apache
|
||||
MAINTAINER louisbl <louisbl@beltramo.me>
|
||||
|
||||
RUN apt-get update && apt-get install -y apt-transport-https
|
||||
RUN curl https://repo.varnish-cache.org/debian/GPG-key.txt | apt-key add -
|
||||
|
@ -110,7 +7,4 @@ RUN echo "deb https://repo.varnish-cache.org/debian/ jessie varnish-4.1" >> /etc
|
|||
&& apt-get update \
|
||||
&& apt-get install -y varnish
|
||||
|
||||
COPY apache2-foreground /usr/local/bin/
|
||||
WORKDIR /var/www/html
|
||||
EXPOSE 80 6081
|
||||
CMD ["apache2-foreground"]
|
||||
EXPOSE 6081
|
||||
|
|
|
@ -0,0 +1,5 @@
|
|||
FROM louisbl/php:7.1-apache
|
||||
MAINTAINER louisbl <louisbl@beltramo.me>
|
||||
|
||||
COPY xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
|
||||
RUN pecl install xdebug && docker-php-ext-enable xdebug
|
|
@ -0,0 +1,110 @@
|
|||
FROM php:7.1-fpm
|
||||
MAINTAINER louisbl <louisbl@beltramo.me>
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
g++ \
|
||||
imagemagick \
|
||||
libbz2-dev \
|
||||
libfreetype6-dev \
|
||||
libicu-dev \
|
||||
libjpeg62-turbo-dev \
|
||||
libmcrypt-dev \
|
||||
libpng12-dev \
|
||||
libpq-dev \
|
||||
libxml2-dev \
|
||||
libzip-dev \
|
||||
zlib1g-dev \
|
||||
mysql-client \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
RUN mkdir /usr/include/freetype2/freetype && ln -s /usr/include/freetype2/freetype.h /usr/include/freetype2/freetype/freetype.h
|
||||
|
||||
RUN pecl install apcu \
|
||||
&& docker-php-ext-enable apcu
|
||||
|
||||
RUN docker-php-ext-configure gd --with-jpeg-dir --with-freetype-dir --enable-gd-native-ttf \
|
||||
&& docker-php-ext-configure pdo_mysql --with-pdo-mysql=mysqlnd \
|
||||
&& docker-php-ext-install \
|
||||
bz2 \
|
||||
gd \
|
||||
exif \
|
||||
intl \
|
||||
json \
|
||||
mbstring \
|
||||
mcrypt \
|
||||
xmlrpc \
|
||||
bcmath \
|
||||
opcache \
|
||||
pdo_mysql \
|
||||
mysqli \
|
||||
zip
|
||||
|
||||
# set recommended PHP.ini settings
|
||||
# see https://secure.php.net/manual/en/opcache.installation.php
|
||||
RUN { \
|
||||
echo 'opcache.memory_consumption=128'; \
|
||||
echo 'opcache.interned_strings_buffer=8'; \
|
||||
echo 'opcache.max_accelerated_files=4000'; \
|
||||
echo 'opcache.revalidate_freq=60'; \
|
||||
echo 'opcache.fast_shutdown=1'; \
|
||||
echo 'opcache.enable_cli=0'; \
|
||||
} > /usr/local/etc/php/conf.d/opcache-recommended.ini
|
||||
RUN echo "date.timezone = \"Europe/Paris\"" > /usr/local/etc/php/conf.d/timezone.ini
|
||||
|
||||
RUN apt-get update && apt-get install -y apache2-bin apache2.2-common --no-install-recommends && rm -rf /var/lib/apt/lists/*
|
||||
|
||||
ENV APACHE_CONFDIR /etc/apache2
|
||||
ENV APACHE_ENVVARS $APACHE_CONFDIR/envvars
|
||||
|
||||
RUN set -ex \
|
||||
\
|
||||
# generically convert lines like
|
||||
# export APACHE_RUN_USER=www-data
|
||||
# into
|
||||
# : ${APACHE_RUN_USER:=www-data}
|
||||
# export APACHE_RUN_USER
|
||||
# so that they can be overridden at runtime ("-e APACHE_RUN_USER=...")
|
||||
&& sed -ri 's/^export ([^=]+)=(.*)$/: ${\1:=\2}\nexport \1/' "$APACHE_ENVVARS" \
|
||||
\
|
||||
# setup directories and permissions
|
||||
&& . "$APACHE_ENVVARS" \
|
||||
&& for dir in \
|
||||
"$APACHE_LOCK_DIR" \
|
||||
"$APACHE_RUN_DIR" \
|
||||
"$APACHE_LOG_DIR" \
|
||||
/var/www/html \
|
||||
; do \
|
||||
rm -rvf "$dir" \
|
||||
&& mkdir -p "$dir" \
|
||||
&& chown -R "$APACHE_RUN_USER:$APACHE_RUN_GROUP" "$dir"; \
|
||||
done
|
||||
|
||||
# logs should go to stdout / stderr
|
||||
RUN set -ex \
|
||||
&& . "$APACHE_ENVVARS" \
|
||||
&& ln -sfT /dev/stderr "$APACHE_LOG_DIR/error.log" \
|
||||
&& ln -sfT /dev/stdout "$APACHE_LOG_DIR/access.log" \
|
||||
&& ln -sfT /dev/stdout "$APACHE_LOG_DIR/other_vhosts_access.log"
|
||||
|
||||
# PHP files should be handled by PHP, and should be preferred over any other file type
|
||||
RUN { \
|
||||
echo '<FilesMatch \.php$>'; \
|
||||
echo '\tSetHandler "proxy:fcgi://127.0.0.1:9000"'; \
|
||||
echo '</FilesMatch>'; \
|
||||
echo; \
|
||||
echo 'DirectoryIndex disabled'; \
|
||||
echo 'DirectoryIndex index.php index.html'; \
|
||||
echo; \
|
||||
echo '<Directory /var/www/>'; \
|
||||
echo '\tOptions -Indexes'; \
|
||||
echo '\tAllowOverride All'; \
|
||||
echo '</Directory>'; \
|
||||
} | tee "$APACHE_CONFDIR/conf-available/docker-php.conf" \
|
||||
&& a2enconf docker-php
|
||||
|
||||
RUN a2enmod proxy_fcgi
|
||||
|
||||
COPY apache2-foreground /usr/local/bin/
|
||||
WORKDIR /var/www/html
|
||||
EXPOSE 80
|
||||
CMD ["apache2-foreground"]
|
|
@ -1,5 +1,5 @@
|
|||
FROM php:5.6-cli
|
||||
MAINTAINER ozconseil <team-dev@ozconseil.com>
|
||||
FROM php:7.1-cli
|
||||
MAINTAINER louisbl <louisbl@beltramo.me>
|
||||
|
||||
RUN apt-get update && apt-get install -y \
|
||||
g++ \
|
||||
|
@ -30,9 +30,7 @@ RUN docker-php-ext-configure gd --with-jpeg-dir --with-freetype-dir --enable-gd-
|
|||
mbstring \
|
||||
mcrypt \
|
||||
mysqli \
|
||||
mysql \
|
||||
pdo_mysql \
|
||||
xsl \
|
||||
zip
|
||||
|
||||
RUN echo "date.timezone = \"Europe/Paris\"" > /usr/local/etc/php/conf.d/timezone.ini
|
|
@ -1,15 +1,15 @@
|
|||
FROM ozconseil/php:5.6-apache
|
||||
MAINTAINER ozconseil <team-dev@ozconseil.com>
|
||||
FROM louisbl/php:7.1-apache
|
||||
MAINTAINER louisbl <louisbl@beltramo.me>
|
||||
|
||||
# Install Nodejs, Git, ssh & mysql clients
|
||||
RUN cd /tmp && curl -sL https://deb.nodesource.com/setup_4.x | bash -
|
||||
RUN cd /tmp && curl -sL https://deb.nodesource.com/setup_6.x | bash -
|
||||
RUN apt-get update && apt-get install -y \
|
||||
git \
|
||||
openssh-client \
|
||||
mysql-client \
|
||||
nodejs \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
RUN npm install npm -g
|
||||
RUN npm install yarn -g
|
||||
|
||||
# Install Composer
|
||||
RUN curl -sS https://getcomposer.org/installer \
|
||||
|
@ -22,7 +22,7 @@ WORKDIR /var/www
|
|||
|
||||
# npm deps
|
||||
ONBUILD COPY package.json /var/www/
|
||||
ONBUILD RUN npm install --unsafe-perm
|
||||
ONBUILD RUN yarn
|
||||
|
||||
# Composer deps
|
||||
ONBUILD COPY auth.json /var/www/
|
|
@ -0,0 +1,5 @@
|
|||
FROM louisbl/php:7.1-varnish
|
||||
MAINTAINER louisbl <louisbl@beltramo.me>
|
||||
|
||||
COPY xdebug.ini /usr/local/etc/php/conf.d/xdebug.ini
|
||||
RUN pecl install xdebug && docker-php-ext-enable xdebug
|
|
@ -0,0 +1,10 @@
|
|||
FROM louisbl/php:7.1-apache
|
||||
MAINTAINER louisbl <louisbl@beltramo.me>
|
||||
|
||||
RUN apt-get update && apt-get install -y apt-transport-https
|
||||
RUN curl https://repo.varnish-cache.org/debian/GPG-key.txt | apt-key add -
|
||||
RUN echo "deb https://repo.varnish-cache.org/debian/ jessie varnish-4.1" >> /etc/apt/sources.list.d/varnish-cache.list \
|
||||
&& apt-get update \
|
||||
&& apt-get install -y varnish
|
||||
|
||||
EXPOSE 6081
|
33
README.md
33
README.md
|
@ -1,17 +1,17 @@
|
|||
# Supported tags and respective `Dockerfile` links
|
||||
|
||||
- [`5.4-cli` (*5.4/Dockerfile*)](https://github.com/OzConseil/docker-php/blob/master/5.4/cli/Dockerfile)
|
||||
- [`5.4-apache` (*5.4/apache/Dockerfile*)](https://github.com/OzConseil/docker-php/blob/master/5.4/apache/Dockerfile)
|
||||
- [`5.4-fpm` (*5.4/fpm/Dockerfile*)](https://github.com/OzConseil/docker-php/blob/master/5.4/fpm/Dockerfile)
|
||||
- [`5.5.6-cli` (*5.5.6/Dockerfile*)](https://github.com/OzConseil/docker-php/blob/master/5.5.6/cli/Dockerfile)
|
||||
- [`5.5.6-apache` (*5.5.6/apache/Dockerfile*)](https://github.com/OzConseil/docker-php/blob/master/5.5.6/apache/Dockerfile)
|
||||
- [`5.5.6-fpm` (*5.5.6/fpm/Dockerfile*)](https://github.com/OzConseil/docker-php/blob/master/5.5.6/fpm/Dockerfile)
|
||||
- [`5.5-cli` (*5.5/Dockerfile*)](https://github.com/OzConseil/docker-php/blob/master/5.5/cli/Dockerfile)
|
||||
- [`5.5-apache` (*5.5/apache/Dockerfile*)](https://github.com/OzConseil/docker-php/blob/master/5.5/apache/Dockerfile)
|
||||
- [`5.5-fpm` (*5.5/fpm/Dockerfile*)](https://github.com/OzConseil/docker-php/blob/master/5.5/fpm/Dockerfile)
|
||||
- [`5.6-cli` (*5.6/Dockerfile*)](https://github.com/OzConseil/docker-php/blob/master/5.6/cli/Dockerfile)
|
||||
- [`5.6-apache` (*5.6/apache/Dockerfile*)](https://github.com/OzConseil/docker-php/blob/master/5.6/apache/Dockerfile)
|
||||
- [`5.6-fpm` (*5.6/fpm/Dockerfile*)](https://github.com/OzConseil/docker-php/blob/master/5.6/fpm/Dockerfile)
|
||||
- [`7.0-apache` (*7.0/apache/Dockerfile*)](https://github.com/louisbl/docker-php/blob/master/7.0/apache/Dockerfile)
|
||||
- [`7.0-apache-xdebug` (*7.0/apache-xdebug/Dockerfile*)](https://github.com/louisbl/docker-php/blob/master/7.0/apache-xdebug/Dockerfile)
|
||||
- [`7.0-cli` (*7.0/cli/Dockerfile*)](https://github.com/louisbl/docker-php/blob/master/7.0/cli/Dockerfile)
|
||||
- [`7.0-onbuild` (*7.0/onbuild/Dockerfile*)](https://github.com/louisbl/docker-php/blob/master/7.0/onbuild/Dockerfile)
|
||||
- [`7.0-varnish` (*7.0/varnish/Dockerfile*)](https://github.com/louisbl/docker-php/blob/master/7.0/varnish/Dockerfile)
|
||||
- [`7.0-varnish-xdebug` (*7.0/varnish-xdebug/Dockerfile*)](https://github.com/louisbl/docker-php/blob/master/7.0/varnish-xdebug/Dockerfile)
|
||||
- [`7.1-apache` (*7.1/apache/Dockerfile*)](https://github.com/louisbl/docker-php/blob/master/7.1/apache/Dockerfile)
|
||||
- [`7.1-apache-xdebug` (*7.1/apache-xdebug/Dockerfile*)](https://github.com/louisbl/docker-php/blob/master/7.1/apache-xdebug/Dockerfile)
|
||||
- [`7.1-cli` (*7.1/cli/Dockerfile*)](https://github.com/louisbl/docker-php/blob/master/7.1/cli/Dockerfile)
|
||||
- [`7.1-onbuild` (*7.1/onbuild/Dockerfile*)](https://github.com/louisbl/docker-php/blob/master/7.1/onbuild/Dockerfile)
|
||||
- [`7.1-varnish` (*7.1/varnish/Dockerfile*)](https://github.com/louisbl/docker-php/blob/master/7.1/varnish/Dockerfile)
|
||||
- [`7.1-varnish-xdebug` (*7.1/varnish-xdebug/Dockerfile*)](https://github.com/louisbl/docker-php/blob/master/7.1/varnish-xdebug/Dockerfile)
|
||||
|
||||
For more information about this image and its history, please see the [relevant manifest file (`library/php`)](https://github.com/docker-library/official-images/blob/master/library/php) in the [`docker-library/official-images` GitHub repo](https://github.com/docker-library/official-images).
|
||||
|
||||
|
@ -25,7 +25,7 @@ For PHP projects run through the command line interface (CLI), you can do the fo
|
|||
|
||||
### Create a `Dockerfile` in your PHP project
|
||||
|
||||
FROM ozconseil/php:5.6-cli
|
||||
FROM louisbl/php:7.1-cli
|
||||
COPY . /usr/src/myapp
|
||||
WORKDIR /usr/src/myapp
|
||||
CMD [ "php", "./your-script.php" ]
|
||||
|
@ -41,7 +41,7 @@ More commonly, you will probably want to run PHP in conjunction with Apache http
|
|||
|
||||
### Create a `Dockerfile` in your PHP project
|
||||
|
||||
FROM ozconseil/php:5.6-apache
|
||||
FROM louisbl/php:7.1-apache
|
||||
COPY src/ /var/www/html/
|
||||
|
||||
Where `src/` is the directory containing all your php code. Then, run the commands to build and run the Docker image:
|
||||
|
@ -51,7 +51,7 @@ Where `src/` is the directory containing all your php code. Then, run the comman
|
|||
|
||||
We recommend that you add a custom `php.ini` configuration. `COPY` it into `/usr/local/etc/php` by adding one more line to the Dockerfile above and running the same commands to build and run:
|
||||
|
||||
FROM ozconseil/php:5.6-apache
|
||||
FROM louisbl/php:7.1-apache
|
||||
COPY config/php.ini /usr/local/etc/php
|
||||
COPY src/ /var/www/html/
|
||||
|
||||
|
@ -97,7 +97,7 @@ We provide two convenient scripts named `docker-php-ext-configure` and `docker-p
|
|||
For example, if you want to have a PHP-FPM image with `iconv`, `mcrypt` and `gd` extensions, you can inheriting the base image that you like, and write your own `Dockerfile` like this:
|
||||
|
||||
```docker
|
||||
FROM ozconseil/php:5.6-fpm
|
||||
FROM louisbl/php:7.1-fpm
|
||||
# Install modules
|
||||
RUN apt-get update && apt-get install -y \
|
||||
libfreetype6-dev \
|
||||
|
@ -121,4 +121,3 @@ View [license information](http://php.net/license/) for the software contained i
|
|||
This image is officially supported on Docker version 1.7.0.
|
||||
|
||||
Support for older versions (down to 1.0) is provided on a best-effort basis.
|
||||
|
||||
|
|
25
build_all.sh
25
build_all.sh
|
@ -1,16 +1,15 @@
|
|||
#!/usr/bin/env bash
|
||||
|
||||
docker build -t ozconseil/php:5.4-apache 5.4/apache
|
||||
docker build -t ozconseil/php:5.4-apache-xdebug 5.4/apache-xdebug
|
||||
docker build -t ozconseil/php:5.4-cli 5.4/cli
|
||||
docker build -t ozconseil/php:5.4-onbuild 5.4/onbuild
|
||||
docker build -t louisbl/php:7.0-apache 7.0/apache
|
||||
docker build -t louisbl/php:7.0-apache-xdebug 7.0/apache-xdebug
|
||||
docker build -t louisbl/php:7.0-cli 7.0/cli
|
||||
docker build -t louisbl/php:7.0-onbuild 7.0/onbuild
|
||||
docker build -t louisbl/php:7.0-varnish 7.0/varnish
|
||||
docker build -t louisbl/php:7.0-varnish-xdebug 7.0/varnish-xdebug
|
||||
|
||||
docker build -t ozconseil/php:5.5-apache 5.5/apache
|
||||
docker build -t ozconseil/php:5.5-apache-xdebug 5.5/apache-xdebug
|
||||
docker build -t ozconseil/php:5.5-cli 5.5/cli
|
||||
docker build -t ozconseil/php:5.5-onbuild 5.5/onbuild
|
||||
|
||||
docker build -t ozconseil/php:5.6-apache 5.6/apache
|
||||
docker build -t ozconseil/php:5.6-apache-xdebug 5.6/apache-xdebug
|
||||
docker build -t ozconseil/php:5.6-cli 5.6/cli
|
||||
docker build -t ozconseil/php:5.6-onbuild 5.6/onbuild
|
||||
docker build -t louisbl/php:7.1-apache 7.1/apache
|
||||
docker build -t louisbl/php:7.1-apache-xdebug 7.1/apache-xdebug
|
||||
docker build -t louisbl/php:7.1-cli 7.1/cli
|
||||
docker build -t louisbl/php:7.1-onbuild 7.1/onbuild
|
||||
docker build -t louisbl/php:7.1-varnish 7.1/varnish
|
||||
docker build -t louisbl/php:7.1-varnish-xdebug 7.1/varnish-xdebug
|
||||
|
|
Loading…
Reference in New Issue