You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
79 lines
3.0 KiB
79 lines
3.0 KiB
#FROM php:7.4-apache
|
|
#FROM php:8.1-apache
|
|
FROM php:8.0-apache
|
|
|
|
# pour upgrader garradin, il suffit de modifier le numéro de version ici
|
|
ENV GARRADIN_VERSION 1.1.24
|
|
|
|
ENV GARRADIN_DOWNLOAD_DIR download/garradin
|
|
ENV GARRADIN_DIR /usr/share/garradin
|
|
|
|
########################################
|
|
# APT local cache
|
|
# work around because COPY failed if no source file
|
|
COPY .dummy .apt-mirror-confi[g] .proxy-confi[g] /
|
|
RUN cp /.proxy-config /etc/profile.d/proxy.sh 2> /dev/null || true
|
|
RUN if [ -f /.apt-mirror-config ] ; then . /.apt-mirror-config && sed -i \
|
|
-e "s/deb.debian.org/${APT_MIRROR_DEBIAN}/g" \
|
|
-e "s/security.debian.org/${APT_MIRROR_DEBIAN_SECURITY}/g" \
|
|
-e "s/archive.ubuntu.com/${APT_MIRROR_UBUNTU}/g" \
|
|
-e "s/security.ubuntu.com/${APT_MIRROR_UBUNTU_SECURITY}/g" \
|
|
/etc/apt/sources.list; fi
|
|
|
|
########################################
|
|
RUN apt-get update --quiet && apt-get install -y \
|
|
libicu-dev libpq-dev zlib1g-dev libicu-dev \
|
|
libzip-dev git wget zip patch
|
|
|
|
#install composer setup script
|
|
COPY dockers/garradin/composer-setup.sh /usr/local/bin/
|
|
RUN chmod +x /usr/local/bin/composer-setup.sh
|
|
|
|
#install internationalization libs
|
|
RUN docker-php-ext-configure intl
|
|
RUN docker-php-ext-install intl
|
|
RUN docker-php-ext-install -j$(nproc) pdo ctype
|
|
RUN /usr/local/bin/composer-setup.sh
|
|
|
|
#on télécharge le version de garradin (fait dans download.sh)
|
|
#curl -O https://fossil.kd2.org/garradin/uv/garradin-${GARRADIN_VERSION}.tar.gz --output ${GARRADIN_DOWNLOAD_DIR}/
|
|
|
|
ADD "${GARRADIN_DOWNLOAD_DIR}/garradin-${GARRADIN_VERSION}.tar.gz" /usr/share/
|
|
RUN mv /usr/share/garradin-${GARRADIN_VERSION} ${GARRADIN_DIR}
|
|
|
|
RUN echo '<IfModule mod_negotiation.c>\n\
|
|
Options -MultiViews\n\
|
|
</IfModule>\n\
|
|
\n\
|
|
php_value upload_max_filesize 100M\n\
|
|
php_value post_max_size 100M\n\
|
|
php_value memory_limit 256M\n\
|
|
FallbackResource /_route.php\n\
|
|
'> ${GARRADIN_DIR}/www/.htaccess
|
|
|
|
#install prince pour génération pdf
|
|
RUN curl https://www.princexml.com/download/prince_14.2-1_debian10_amd64.deb --output prince.deb
|
|
RUN apt-get install libfontconfig1 libgif7 libjpeg62-turbo liblcms2-2 libtiff5 -y
|
|
RUN dpkg -i prince.deb
|
|
|
|
#install du patch pour l'input en php7.4
|
|
COPY dockers/garradin/input-form_php7.4.diff ${GARRADIN_DIR}/include/lib/Garradin/
|
|
RUN patch /usr/share/garradin/include/lib/Garradin/Template.php /usr/share/garradin/include/lib/Garradin/input-form_php7.4.diff
|
|
|
|
COPY dockers/garradin/config/factory_cron.sh ${GARRADIN_DIR}/
|
|
COPY dockers/garradin/config/setupWebRights.sh ${GARRADIN_DIR}/
|
|
RUN mkdir ${GARRADIN_DIR}/users
|
|
|
|
#install cron pour factory_cron.sh
|
|
RUN apt-get install cron joe rsyslog -y
|
|
RUN sed -i '/imklog/s/^/#/' /etc/rsyslog.conf
|
|
RUN echo "0 0 * * * cd ${GARRADIN_DIR} && ${GARRADIN_DIR}/factory_cron.sh" >> /var/spool/cron/crontabs/root
|
|
RUN chmod 600 /var/spool/cron/crontabs/root
|
|
RUN sed -i "/exec/i\service cron start\n" /usr/local/bin/docker-php-entrypoint
|
|
RUN ln -sf /usr/local/bin/php /usr/bin/
|
|
|
|
# Set owner web server
|
|
RUN chown -R www-data: ${GARRADIN_DIR}
|
|
|
|
EXPOSE 80
|
|
VOLUME [ "/usr/share/garradin/users" ]
|
|
|