# The image is based on the official PHP 8 image FROM php:7.4-apache ENV COMPOSER_MEMORY_LIMIT -1 ENV ROOT_DIR /var/www/html ENV APACHE_DOCUMENT_ROOT /var/www/html/contao/web ARG CONTAO_VERSION=4.13 WORKDIR $ROOT_DIR COPY --from=composer /usr/bin/composer /usr/bin/composer #We install all the necessary dependencies RUN apt-get update RUN apt-get install -y \ libfreetype6-dev \ libjpeg62-turbo-dev \ libpng-dev \ libicu-dev \ && docker-php-ext-install -j$(nproc) iconv \ && docker-php-ext-configure gd --with-jpeg=/usr/include/ --with-freetype=/usr/include/ \ && docker-php-ext-install -j$(nproc) gd \ && docker-php-ext-install -j$(nproc) intl \ && docker-php-ext-install -j$(nproc) pdo_mysql RUN apt-get install -y git zip #RUN pecl install xdebug && docker-php-ext-enable xdebug #RUN echo 'zend_extension=xdebug' >> /usr/local/etc/php/php.ini #RUN echo 'xdebug.mode=develop,debug' >> /usr/local/etc/php/php.ini #RUN echo 'xdebug.client_host=host.docker.internal' >> /usr/local/etc/php/php.ini #RUN echo 'xdebug.start_with_request=yes' >> /usr/local/etc/php/php.ini #RUN echo 'session.save_path = "/tmp"' >> /usr/local/etc/php/php.ini #RUN curl -sS https://getcomposer.org/installer | php \ # && mv composer.phar /usr/local/bin/composer \ # && composer create-project --no-dev contao/managed-edition:$CONTAO_VERSION /var/www/html/contao '4.9.*' # Install Contao itself RUN curl -sS https://getcomposer.org/installer | php \ && mv composer.phar /usr/local/bin/composer \ && composer create-project --no-dev contao/managed-edition:$CONTAO_VERSION contao #RUN curl -sS https://getcomposer.org/installer | php && mv composer.phar /usr/local/bin/composer #RUN rm -rf /var/www/html/ && composer create-project contao/managed-edition:$CONTAO_VERSION $ROOT_DIR # Make the Contao directory writable for the web server RUN chown -R www-data:www-data /var/www/html/contao #Enable apache’s mod_rewrite RUN a2enmod rewrite # Change the web root RUN sed -ri -e 's!/var/www/html!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/sites-available/*.conf RUN sed -ri -e 's!/var/www/!${APACHE_DOCUMENT_ROOT}!g' /etc/apache2/apache2.conf /etc/apache2/conf-available/*.conf RUN mv "$PHP_INI_DIR/php.ini-development" "$PHP_INI_DIR/php.ini" RUN rm -rf /var/www/html/contao/var/cache/* EXPOSE 80 #WORKDIR $ROOT_DIR HEALTHCHECK CMD curl --fail http://localhost/ || exit 1