services-garbaye/podman-framadate/container/Containerfile

41 lines
1.7 KiB
Docker

FROM docker.io/library/php:8-apache
ARG version
RUN apt-get -y update \
&& DEBIAN_FRONTEND=noninteractive apt-get install --no-install-recommends -y -qq zip unzip git zlib1g-dev libicu-dev g++ default-mysql-client git locales \
&& apt-get clean \
&& rm -rf /var/lib/apt/lists/* \
&& sed -i '/fr_FR.UTF-8/s/^# //g' /etc/locale.gen \
&& locale-gen \
&& docker-php-ext-install intl \
&& docker-php-ext-install pdo_mysql \
&& a2enmod rewrite
COPY --from=docker.io/library/composer:2.2 /usr/bin/composer /usr/bin/composer
COPY php.ini /usr/local/etc/php/php.ini
COPY apache-framadate.conf /etc/apache2/sites-enabled/framadate.conf
COPY entrypoint.sh /usr/local/bin/entrypoint
ENV COMPOSER_ALLOW_SUPERUSER=1
RUN set -eux; \
composer clear-cache
ENV PATH="${PATH}:/root/.composer/vendor/bin"
ENV COMPOSER_ALLOW_SUPERUSER 0
WORKDIR /var/www/framadate
RUN git clone -b $version --depth=1 https://framagit.org/framasoft/framadate/framadate.git . \
&& sed -i -e 's|"smarty/smarty": "^4.0",|"smarty/smarty": "^4.3",|' /var/www/framadate/composer.json \
&& sed -i -e 's|isset($admin)|isset($admin) \&\& $admin|g' /var/www/framadate/tpl/part/comments_list.tpl \
&& chown -R 33:33 . \
&& if [ "$ENV" = "dev" ] ; then echo Using PHP production mode ; else echo Using PHP development mode && echo "error_reporting = E_ERROR | E_WARNING | E_PARSE\ndisplay_errors = On" > /usr/local/etc/php/conf.d/php.ini ; fi \
&& rm /etc/apache2/sites-enabled/000-default.conf \
&& composer install -o --no-interaction --prefer-dist --no-dev \
&& composer dump-autoload --optimize --no-dev --classmap-authoritative \
&& composer update --no-interaction --no-dev
EXPOSE 80
ENTRYPOINT ["entrypoint"]