roundcube/Dockerfile

75 lines
1.7 KiB
Docker

FROM docker.io/alpine:3.17 AS builder
RUN apk add --no-cache \
php81 \
php81-phar \
php81-mbstring \
php81-openssl \
php81-ctype \
php81-gd \
php81-dom \
php81-xml \
php81-ldap \
php81-xmlreader \
php81-xmlwriter
ENV COMPOSER_VERSION=2.1.6
ENV COMPOSER_SHA256_SUM=72524ccebcb071968eb83284507225fdba59f223719b2b3f333d76c8a9ac6b72
RUN wget https://getcomposer.org/download/$COMPOSER_VERSION/composer.phar
RUN echo "$COMPOSER_SHA256_SUM composer.phar" | sha256sum -c - || exit 1
RUN mv composer.phar /usr/bin/composer
RUN chmod +x /usr/bin/composer
ENV VERSION=1.6.1
ENV SHA256_SUM=46c2f6ba34bcb7e57e47cb034bf338e5fc7dcceddda9212a2ef3bd3146d97bed
RUN wget https://github.com/roundcube/roundcubemail/releases/download/$VERSION/roundcubemail-$VERSION-complete.tar.gz
RUN echo "$SHA256_SUM roundcubemail-$VERSION-complete.tar.gz" | sha256sum -c - || exit 1
RUN mkdir -p /var/lib/roundcube
RUN tar xzf roundcubemail-$VERSION-complete.tar.gz -C /var/lib/roundcube --strip 1
FROM docker.io/thallian/php8-fpm:3.17
RUN apk add --no-cache \
openssl \
tar \
nginx \
postgresql-client \
aspell \
ca-certificates \
php81 \
php81-imap \
php81-dom \
php81-json \
php81-xml \
php81-session \
php81-pdo \
php81-pdo_pgsql \
php81-sockets \
php81-exif \
php81-iconv \
php81-openssl \
php81-mbstring \
php81-sockets \
php81-zip \
php81-pspell \
php81-pecl-apcu \
php81-gd \
php81-ctype \
php81-xmlreader \
php81-xmlwriter \
php81-tokenizer \
php81-curl \
php81-simplexml \
php81-xml \
php81-dom \
php81-intl
COPY --from=builder --chown=nginx:nginx /var/lib/roundcube /var/lib/roundcube
ADD /rootfs /
EXPOSE 8080
ENV FPMUSER nginx
ENV FPMGROUP nginx