mirror of
https://github.com/Mailu/Mailu.git
synced 2024-12-14 10:53:30 +02:00
04d69141c3
2961: Hardened malloc was not disabled for oletools when an CPU with missing flags is used r=Diman0 a=Diman0 ## What type of PR? bug fix ## What does this PR do? Updates oletools to also disable hardened malloc when used CPU misses flags ### Related issue(s) - closes #2959 ## Prerequisites Before we can consider review and merge, please make sure the following list is done and checked. If an entry in not applicable, you can check it or remove it from the list. - [n/a ] In case of feature or enhancement: documentation updated accordingly - [x] Unless it's docs or a minor change: add [changelog](https://mailu.io/master/contributors/workflow.html#changelog) entry file. Co-authored-by: Dimitri Huisman <diman@huisman.xyz> Co-authored-by: Dimitri Huisman <52963853+Diman0@users.noreply.github.com> Co-authored-by: Florent Daigniere <nextgens@users.noreply.github.com> Co-authored-by: Florent Daigniere <nextgens@freenetproject.org>
98 lines
3.7 KiB
Docker
98 lines
3.7 KiB
Docker
# syntax=docker/dockerfile-upstream:1.4.3
|
|
|
|
FROM base
|
|
|
|
ARG VERSION
|
|
LABEL version=$VERSION
|
|
|
|
COPY snappymail/pubkey.asc /tmp/snappymail.asc
|
|
COPY roundcube/pubkey.asc /tmp/roundcube.asc
|
|
COPY roundcube/roundcube.diff /tmp/roundcube.diff
|
|
|
|
RUN set -euxo pipefail \
|
|
; apk add --no-cache \
|
|
nginx gpg gpg-agent patch \
|
|
php81 php81-fpm php81-mbstring php81-zip php81-xml php81-simplexml php81-pecl-apcu \
|
|
php81-dom php81-curl php81-exif gd php81-gd php81-iconv php81-intl php81-openssl php81-ctype \
|
|
php81-pdo_sqlite php81-pdo_mysql php81-pdo_pgsql php81-pdo php81-sodium libsodium php81-tidy php81-pecl-uuid \
|
|
php81-pspell php81-pecl-imagick php81-opcache php81-session php81-sockets php81-fileinfo php81-xmlreader php81-xmlwriter \
|
|
aspell-uk aspell-ru aspell-fr aspell-de aspell-en \
|
|
; rm /etc/nginx/http.d/default.conf \
|
|
; rm /etc/php81/php-fpm.d/www.conf \
|
|
; gpg --import /tmp/snappymail.asc \
|
|
; gpg --import /tmp/roundcube.asc \
|
|
; echo extension=snuffleupagus > /etc/php81/conf.d/snuffleupagus.ini \
|
|
; rm -f /tmp/roundcube.asc /tmp/snappymail.asc \
|
|
; mkdir -p /run/nginx /conf
|
|
|
|
# roundcube
|
|
ENV ROUNDCUBE_URL https://github.com/roundcube/roundcubemail/releases/download/1.6.3/roundcubemail-1.6.3-complete.tar.gz
|
|
ENV CARDDAV_URL https://github.com/mstilkerich/rcmcarddav/releases/download/v5.1.0/carddav-v5.1.0.tar.gz
|
|
|
|
RUN set -euxo pipefail \
|
|
; cd /var/www \
|
|
; curl -sLo /dev/shm/roundcube.tgz ${ROUNDCUBE_URL} \
|
|
; curl -sLo /dev/shm/roundcube.tgz.asc ${ROUNDCUBE_URL}.asc \
|
|
; gpg --status-fd 1 --verify /dev/shm/roundcube.tgz.asc \
|
|
; tar xzf /dev/shm/roundcube.tgz \
|
|
; curl -sL ${CARDDAV_URL} | tar xz \
|
|
; mv roundcubemail-* roundcube \
|
|
; mkdir -p /var/www/roundcube/config \
|
|
; mv carddav roundcube/plugins/ \
|
|
; cd roundcube \
|
|
; rm -rf CHANGELOG.md SECURITY.md INSTALL LICENSE README.md UPGRADING composer.json-dist installer composer.* \
|
|
; ln -sf index.php /var/www/roundcube/public_html/sso.php \
|
|
; rm -rf plugins/{autologon,example_addressbook,http_authentication,krb_authentication,new_user_identity,password,redundant_attachments,squirrelmail_usercopy,userinfo,virtuser_file,virtuser_query} \
|
|
; patch -p0 < /tmp/roundcube.diff \
|
|
; rm /tmp/roundcube.diff
|
|
|
|
COPY roundcube/config/config.inc.php /conf/
|
|
COPY roundcube/login/ /var/www/roundcube/plugins/mailu/
|
|
COPY roundcube/config/config.inc.carddav.php /var/www/roundcube/plugins/carddav/config.inc.php
|
|
|
|
# snappymail
|
|
|
|
ENV SNAPPYMAIL_URL https://github.com/the-djmaze/snappymail/releases/download/v2.29.1/snappymail-2.29.1.tar.gz
|
|
|
|
RUN set -euxo pipefail \
|
|
; mkdir /var/www/snappymail \
|
|
; cd /var/www/snappymail \
|
|
; curl -sLo /dev/shm/snappymail.tgz ${SNAPPYMAIL_URL} \
|
|
; curl -sLo /dev/shm/snappymail.tgz.asc ${SNAPPYMAIL_URL}.asc \
|
|
; gpg --status-fd 1 --verify /dev/shm/snappymail.tgz.asc \
|
|
; cat /dev/shm/snappymail.tgz | tar xz
|
|
|
|
# SnappyMail login
|
|
COPY snappymail/login/include.php /var/www/snappymail/
|
|
COPY snappymail/login/sso.php /var/www/snappymail/
|
|
|
|
# Parsed and moved at startup
|
|
COPY snappymail/defaults/application.ini /defaults/
|
|
COPY snappymail/defaults/default.json /defaults/
|
|
|
|
# set perms
|
|
RUN set -euxo pipefail \
|
|
; chmod -R a+rX /var/www/snappymail \
|
|
; chown -R root:root /var/www/snappymail \
|
|
; chown -R mailu:mailu /var/www/snappymail/data \
|
|
; chown -R root:root /var/www/roundcube/ \
|
|
; chown -R mailu:mailu /var/www/roundcube/temp /var/www/roundcube/logs \
|
|
; chmod -R a+rX /var/www/roundcube
|
|
|
|
# common
|
|
COPY start.py /
|
|
COPY php.ini /defaults/
|
|
COPY php-webmail.conf /etc/php81/php-fpm.d/
|
|
COPY nginx-webmail.conf /conf/
|
|
COPY snuffleupagus.rules /etc/snuffleupagus.rules.tpl
|
|
|
|
# EXPOSE 80/tcp
|
|
VOLUME /data
|
|
VOLUME /overrides
|
|
|
|
CMD /start.py
|
|
|
|
HEALTHCHECK CMD curl -f -L http://localhost/ping || exit 1
|
|
|
|
RUN echo $VERSION >> /version
|