nextcloud/Containerfile
Sebastian Hugentobler 431c61f824
Some checks failed
Build Multiarch Container Image / call-reusable-workflow (push) Failing after 2m29s
symlink php84 to php
2025-03-31 14:04:44 +02:00

111 lines
4.2 KiB
Docker

FROM docker.io/alpine:3.21 AS builder
ENV NC_VERSION=31.0.2
ENV NC_SHA256_SUM=00b572111b7c2b98842d95c046de79ef463ccfadc8a04b54006c786e1f94c310
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 POLLS_VERSION=8.0.0-alpha14
ENV POLLS_SHA256_SUM=4c7f6853a62a034a1a8c3ff03e7774f3de0d082c056dcd4fb19f6a14df451eb2
RUN wget https://github.com/nextcloud/polls/releases/download/v$POLLS_VERSION/polls-$POLLS_VERSION.tar.gz
RUN echo "$POLLS_SHA256_SUM polls-$POLLS_VERSION.tar.gz" | sha256sum -c - || exit 1
RUN mkdir /var/lib/nextcloud/apps/polls
RUN tar xzf polls-$POLLS_VERSION.tar.gz -C /var/lib/nextcloud/apps/polls --strip 1
ENV CONTACTS_VERSION=v7.0.4
ENV CONTACTS_SHA256_SUM=681adbcd72966f74337812d63d1ff8ad678ce3485a06211007d80550d4f7abf0
RUN wget https://github.com/nextcloud-releases/contacts/releases/download/$CONTACTS_VERSION/contacts-$CONTACTS_VERSION.tar.gz
RUN echo "$CONTACTS_SHA256_SUM contacts-$CONTACTS_VERSION.tar.gz" | sha256sum -c - || exit 1
RUN mkdir /var/lib/nextcloud/apps/contacts
RUN tar xzf contacts-$CONTACTS_VERSION.tar.gz -C /var/lib/nextcloud/apps/contacts --strip 1
ENV CALENDAR_VERSION=v5.2.0
ENV CALENDAR_SHA256_SUM=9801ff039a223f0221e8ae9b6fdc1de790a6a8ca0401a290555afccc535b5c4f
RUN wget https://github.com/nextcloud-releases/calendar/releases/download/$CALENDAR_VERSION/calendar-$CALENDAR_VERSION.tar.gz
RUN echo "$CALENDAR_SHA256_SUM calendar-$CALENDAR_VERSION.tar.gz" | sha256sum -c - || exit 1
RUN mkdir /var/lib/nextcloud/apps/calendar
RUN tar xzf calendar-$CALENDAR_VERSION.tar.gz -C /var/lib/nextcloud/apps/calendar --strip 1
ENV TASKS_VERSION=v0.16.1
ENV TASKS_SHA256_SUM=5296b7765f9bf7b515dca5cb95cc5e4ba3b31414c85be7b753f4fd4094fa3e6c
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=v4.11.0
ENV NOTES_SHA256_SUM=7693027a18e13d0a0e03e31574b786737ef4866a96ce6b0c733815d3c9bf70ee
RUN wget https://github.com/nextcloud-releases/notes/releases/download/$NOTES_VERSION/notes-$NOTES_VERSION.tar.gz
RUN echo "$NOTES_SHA256_SUM notes-$NOTES_VERSION.tar.gz" | sha256sum -c - || exit 1
RUN mkdir /var/lib/nextcloud/apps/notes
RUN tar xzf notes-$NOTES_VERSION.tar.gz -C /var/lib/nextcloud/apps/notes --strip 1
ENV NEWS_VERSION=25.3.1
ENV NEWS_SHA256_SUM=b6b5e70d2485cabe47297692d52dd7ae5480522893fbc07e90fd2583e7b12dcb
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
ENV SOCIAL_LOGIN_VERSION=v5.9.2
ENV SOCIAL_LOGIN_SHA256_SUM=336b084e989e5af97658f8f1587b72c9944d40f6a060b6a155a25c0e8893b21f
RUN wget https://github.com/zorn-v/nextcloud-social-login/releases/download/$SOCIAL_LOGIN_VERSION/release.tar.gz
RUN echo "$SOCIAL_LOGIN_SHA256_SUM release.tar.gz" | sha256sum -c - || exit 1
RUN mkdir /var/lib/nextcloud/apps/sociallogin
RUN tar xzf release.tar.gz -C /var/lib/nextcloud/apps/sociallogin --strip 1
FROM docker.io/thallian/php8-fpm:3.21-8.4
ENV FPMUSER=nginx
ENV FPMGROUP=nginx
ENV PHP_MEMORY_LIMIT=512M
RUN apk add --no-cache \
nginx \
ffmpeg \
php84-cli \
php84-pecl-apcu \
php84-opcache \
php84-pcntl \
php84-ctype \
php84-curl \
php84-dom \
php84-gd \
php84-iconv \
php84-xml \
php84-json \
php84-mbstring \
php84-openssl \
php84-posix \
php84-session \
php84-simplexml \
php84-xmlreader \
php84-xmlwriter \
php84-zip \
php84-zlib \
php84-pdo_pgsql \
php84-bz2 \
php84-fileinfo \
php84-intl \
php84-exif \
php84-bcmath \
php84-gmp \
php84-imap \
php84-pdo \
dcron
RUN ln -s /usr/bin/php84 /bin/php
COPY --from=builder --chown=nginx:nginx /var/lib/nextcloud /var/lib/nextcloud
RUN rm /etc/nginx/http.d/default.conf
ENV S6_CMD_WAIT_FOR_SERVICES_MAXTIME=0
ADD /rootfs /
VOLUME [ "/var/lib/nextcloud/data", "/var/lib/nextcloud/config" ]