FROM debian:jessie
ENV PHPIZE_DEPS
autoconf
file
g++
gcc
libc-dev
make
pkg-config
re2c
RUN apt-get update && apt-get install -y
$PHPIZE_DEPS
ca-certificates
curl
libedit2
libsqlite3-0
libxml2
xz-utils
default-jre-headless
locales-all
vim
libreoffice
openssl
--no-install-recommends && rm -r /var/lib/apt/lists/*
ENV PHP_INI_DIR /usr/local/etc/php RUN mkdir -p $PHP_INI_DIR/conf.d
#### 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
\
&& sed -ri 's/^export ([^=]+)=(.*)$/: ${\1:=\2}\nexport \1/' "$APACHE_ENVVARS" \
\
&& . "$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
RUN a2dismod mpm_event && a2enmod mpm_prefork
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"
RUN {
echo '<FilesMatch .php$>';
echo '\tSetHandler application/x-httpd-php';
echo '';
echo;
echo 'DirectoryIndex disabled';
echo 'DirectoryIndex index.php index.html';
echo;
echo '<Directory /var/www/>';
echo '\tOptions -Indexes';
echo '\tAllowOverride All';
echo '';
} | tee "$APACHE_CONFDIR/conf-available/docker-php.conf"
&& a2enconf docker-php
ENV PHP_EXTRA_BUILD_DEPS apache2-dev ENV PHP_EXTRA_CONFIGURE_ARGS --with-apxs2 ####
ENV PHP_CFLAGS="-fstack-protector-strong -fpic -fpie -O2" ENV PHP_CPPFLAGS="$PHP_CFLAGS" ENV PHP_LDFLAGS="-Wl,-O1 -Wl,--hash-style=both -pie"
ENV GPG_KEYS A917B1ECDA84AEC2B568FED6F50ABC807BD5DCD0 528995BFEDFBA7191D46839EF9BA0ADA31CBD89E
ENV PHP_VERSION 7.1.3 ENV PHP_URL="https://secure.php.net/get/php-7.1.3.tar.xz/from/this/mirror" PHP_ASC_URL="https://secure.php.net/get/php-7.1.3.tar.xz.asc/from/this/mirror" ENV PHP_SHA256="e4887c2634778e37fd962fbdf5c4a7d32cd708482fe07b448804625570cb0bb0" PHP_MD5="d604d688be17f4a05b99dbb7fb9581f4"
RUN set -xe;
fetchDeps='
wget
';
apt-get update;
apt-get install -y --no-install-recommends $fetchDeps;
rm -rf /var/lib/apt/lists/*;
mkdir -p /usr/src;
cd /usr/src;
wget -O php.tar.xz "$PHP_URL";
if [ -n "$PHP_SHA256" ]; then
echo "$PHP_SHA256 *php.tar.xz" | sha256sum -c -;
fi;
if [ -n "$PHP_MD5" ]; then
echo "$PHP_MD5 *php.tar.xz" | md5sum -c -;
fi;
if [ -n "$PHP_ASC_URL" ]; then
wget -O php.tar.xz.asc "$PHP_ASC_URL";
export GNUPGHOME="$(mktemp -d)";
for key in $GPG_KEYS; do
gpg --keyserver ha.pool.sks-keyservers.net --recv-keys "$key";
done;
gpg --batch --verify php.tar.xz.asc php.tar.xz;
rm -r "$GNUPGHOME";
fi;
apt-get purge -y --auto-remove $fetchDeps
COPY docker-php-source /usr/local/bin/
RUN set -xe
&& buildDeps="
$PHP_EXTRA_BUILD_DEPS
libcurl4-openssl-dev
libedit-dev
libsqlite3-dev
libssl-dev
libxml2-dev
"
&& apt-get update && apt-get install -y $buildDeps --no-install-recommends && rm -rf /var/lib/apt/lists/*
&& export CFLAGS="$PHP_CFLAGS"
CPPFLAGS="$PHP_CPPFLAGS"
LDFLAGS="$PHP_LDFLAGS"
&& docker-php-source extract
&& cd /usr/src/php
&& ./configure
--with-config-file-path="$PHP_INI_DIR"
--with-config-file-scan-dir="$PHP_INI_DIR/conf.d"
--disable-cgi
\
--enable-ftp \
--enable-mbstring \
--enable-mysqlnd \
\
--with-curl \
--with-libedit \
--with-openssl \
--with-zlib \
\
$PHP_EXTRA_CONFIGURE_ARGS \
&& make -j "$(nproc)" \
&& make install \
&& { find /usr/local/bin /usr/local/sbin -type f -executable -exec strip --strip-all '{}' + || true; } \
&& make clean \
&& docker-php-source delete \
\
&& apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $buildDeps
RUN a2enmod rewrite COPY docker-php-ext-* docker-php-entrypoint /usr/local/bin/
ENTRYPOINT ["docker-php-entrypoint"] #### COPY apache2-foreground /usr/local/bin/ WORKDIR /var/www/html
EXPOSE 80 EXPOSE 443 CMD ["apache2-foreground"] ####
Content type
Image
Digest
Size
451 MB
Last updated
over 9 years ago
docker pull italoc/php7.1.3-libreoffice