nextcloud/Dockerfile

113 lines
4.3 KiB
Docker

FROM alpine:3.10 AS builder
ENV NC_VERSION=16.0.2
ENV NC_SHA256_SUM=f69db6d6961c1b2552990f742877037a8698753ecf27b457b012194d97463641
RUN wget https://download.nextcloud.com/server/releases/nextcloud-$NC_VERSION.tar.bz2
RUN echo "$NC_SHA256_SUM nextcloud-$NC_VERSION.tar.bz2" | sha256sum -c - || exit 1
RUN mkdir -p /var/lib/nextcloud
RUN tar xjf nextcloud-$NC_VERSION.tar.bz2 -C /var/lib/nextcloud --strip 1
ENV TFA_VERSION=v2.1.2
ENV TFA_SHA256_SUM=06bf8c01909c15efbe42b949532ba48a68adc9a275e43ede91249453a1ef468b
RUN wget https://github.com/nextcloud/twofactor_totp/releases/download/$TFA_VERSION/twofactor_totp.tar.gz
RUN echo "$TFA_SHA256_SUM twofactor_totp.tar.gz" | sha256sum -c - || exit 1
RUN mkdir /var/lib/nextcloud/apps/twofactor_totp
RUN tar xzf twofactor_totp.tar.gz -C /var/lib/nextcloud/apps/twofactor_totp --strip 1
ENV U2F_VERSION=v3.0.0
ENV U2F_SHA256_SUM=bb2be4b4f3367b0ba8c8e78cba727ee521df116d2f76a0a73cf956c710d2c08b
RUN wget https://github.com/nextcloud/twofactor_u2f/releases/download/$U2F_VERSION/twofactor_u2f.tar.gz
RUN echo "$U2F_SHA256_SUM twofactor_u2f.tar.gz" | sha256sum -c - || exit 1
RUN mkdir /var/lib/nextcloud/apps/twofactor_u2f
RUN tar xzf twofactor_u2f.tar.gz -C /var/lib/nextcloud/apps/twofactor_u2f --strip 1
ENV POLLS_VERSION=v0.10.3
ENV POLLS_SHA256_SUM=43f5a142aebdf32211f05eef01c0a98fbfe18fc6b4b9e1b3f6d3079c55254e0d
RUN wget https://github.com/nextcloud/polls/releases/download/$POLLS_VERSION/polls.tar.gz
RUN echo "$POLLS_SHA256_SUM polls.tar.gz" | sha256sum -c - || exit 1
RUN mkdir /var/lib/nextcloud/apps/polls
RUN tar xzf polls.tar.gz -C /var/lib/nextcloud/apps/polls --strip 1
ENV CONTACTS_VERSION=v3.1.3
ENV CONTACTS_SHA256_SUM=c66ff52d41262e209397a7b47843bce03aeed7f1d097590d89db70ffd678ad65
RUN wget https://github.com/nextcloud/contacts/releases/download/$CONTACTS_VERSION/contacts.tar.gz
RUN echo "$CONTACTS_SHA256_SUM contacts.tar.gz" | sha256sum -c - || exit 1
RUN mkdir /var/lib/nextcloud/apps/contacts
RUN tar xzf contacts.tar.gz -C /var/lib/nextcloud/apps/contacts --strip 1
ENV CALENDAR_VERSION=v1.7.0
ENV CALENDAR_SHA256_SUM=d9946a7d046e4a3e6c20397b081c2a36f19b3372ee43339e15fa4dc1fedbfb31
RUN wget https://github.com/nextcloud/calendar/releases/download/$CALENDAR_VERSION/calendar.tar.gz
RUN echo "$CALENDAR_SHA256_SUM calendar.tar.gz" | sha256sum -c - || exit 1
RUN mkdir /var/lib/nextcloud/apps/calendar
RUN tar xzf calendar.tar.gz -C /var/lib/nextcloud/apps/calendar --strip 1
ENV TASKS_VERSION=v0.11.0
ENV TASKS_SHA256_SUM=e9ac2fdfab87daf2223f930d136102e9af005eee13f2b0b16d30357cc7890af0
RUN wget https://github.com/nextcloud/tasks/releases/download/$TASKS_VERSION/tasks.tar.gz
RUN echo "$TASKS_SHA256_SUM tasks.tar.gz" | sha256sum -c - || exit 1
RUN mkdir /var/lib/nextcloud/apps/tasks
RUN tar xzf tasks.tar.gz -C /var/lib/nextcloud/apps/tasks --strip 1
ENV NOTES_VERSION=v3.0.0
ENV NOTES_SHA256_SUM=8dd54d7f812c8fbd5996484296e93b2b1deeeec35a89d5cdb697c322654da444
RUN wget https://github.com/nextcloud/notes/releases/download/$NOTES_VERSION/notes.tar.gz
RUN echo "$NOTES_SHA256_SUM notes.tar.gz" | sha256sum -c - || exit 1
RUN mkdir /var/lib/nextcloud/apps/notes
RUN tar xzf notes.tar.gz -C /var/lib/nextcloud/apps/notes --strip 1
ENV NEWS_VERSION=13.1.6
ENV NEWS_SHA256_SUM=a2f5b5a347fed41572b74092c41c1c1765803e6ce5b8983fd093d3ad0a390383
RUN wget https://github.com/nextcloud/news/releases/download/$NEWS_VERSION/news.tar.gz
RUN echo "$NEWS_SHA256_SUM news.tar.gz" | sha256sum -c - || exit 1
RUN mkdir /var/lib/nextcloud/apps/news
RUN tar xzf news.tar.gz -C /var/lib/nextcloud/apps/news --strip 1
FROM thallian/php7-fpm:latest
COPY --from=builder /var/lib/nextcloud /var/lib/nextcloud
ENV FPMUSER=nginx
ENV FPMGROUP=nginx
ENV PHP_MEMORY_LIMIT=512M
RUN apk add --no-cache \
nginx \
ffmpeg \
php7-cli \
php7-pecl-apcu \
php7-opcache \
php7-pcntl \
php7-imagick \
php7-ctype \
php7-curl \
php7-dom \
php7-gd \
php7-iconv \
php7-xml \
php7-json \
php7-mbstring \
php7-openssl \
php7-posix \
php7-session \
php7-simplexml \
php7-xmlreader \
php7-xmlwriter \
php7-zip \
php7-zlib \
php7-pdo_pgsql \
php7-bz2 \
php7-fileinfo \
php7-intl \
php7-exif \
php7-ldap
RUN chown -R nginx:nginx /var/lib/nextcloud
RUN mkdir /run/nginx
RUN rm /etc/nginx/conf.d/default.conf
ADD /rootfs /
VOLUME [ "/var/lib/nextcloud/data", "/var/lib/nextcloud/config" ]