FROM ubuntu:16.04

RUN apt-get update && \
    apt-get -y dist-upgrade && \
    apt-get install -y tzdata git vim curl unzip zip software-properties-common && \
    add-apt-repository -y ppa:sergey-dryabzhinsky/packages && \
    add-apt-repository -y ppa:sergey-dryabzhinsky/php55 && \
    add-apt-repository -y ppa:sergey-dryabzhinsky/php-modules && \
    apt-get update && \
    apt-get install -y apache2 libapache2-mod-php55 php55-common php55-cli php55-mod-openssl php55-mod-mbstring \
                    php55-mod-xml php55-mod-json php55-mod-phar php55-mod-mysql php55-mod-curl php55-mod-mcrypt php55-mod-gd && \
    a2enmod setenvif actions rewrite headers expires && \
    a2dismod mpm_event && \
    a2enmod mpm_prefork php55 && \
    curl -sS https://getcomposer.org/installer | php -- --install-dir=/usr/local/bin --filename=composer && \
    composer global require hirak/prestissimo && \
    ln -sfT /dev/stderr "/var/log/apache2/error.log" && \
    ln -sfT /dev/stdout "/var/log/apache2/access.log" && \
    ln -sfT /dev/stdout "/var/log/apache2/other_vhosts_access.log" && \
    chown -R --no-dereference "www-data:www-data" "/var/log/apache2" && \
    rm /etc/localtime && \
    ln -s /usr/share/zoneinfo/Asia/Bangkok /etc/localtime && \
    apt-get clean && \
    rm -rf /var/lib/apt/lists/*

COPY build-files/docker-php-entrypoint /usr/local/bin
COPY build-files/apache2-foreground /usr/local/bin
COPY build-files/apache2.conf /etc/apache2/apache2.conf
COPY build-files/default.conf /etc/apache2/sites-available/000-default.conf

EXPOSE 80 443
WORKDIR /var/www/html

ENTRYPOINT ["docker-php-entrypoint"]
CMD ["apache2-foreground"]
