FROM docker.io/alpine:3.20 AS builder ENV NC_VERSION=29.0.1 ENV NC_SHA256_SUM=759546daecf79ca787ed6705503693c6db553aabf1d7ae4dfa779c7309b2ada9 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=7.0.3 ENV POLLS_SHA256_SUM=b93057e4fc0450dfe9cf1d7ab142645d75f79e7f0daca8ac6492d597be85f6ec 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=v6.0.0 ENV CONTACTS_SHA256_SUM=e3c11127d0d0f70ef57a7713d9756f715695f846ed86013142588a3b5b10fb50 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=v4.7.4 ENV CALENDAR_SHA256_SUM=0b70187f5993dda3760cadb721a7e33c898adba36d8351bb1a76394d3ecff9fb 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.0 ENV TASKS_SHA256_SUM=1e2b5841c7544541ee8d134c1748ca433bd23bdddb22d8ac2347a6ab4cb0f29e 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.10.0 ENV NOTES_SHA256_SUM=6afeb2e465624f3947b6751bfce203c3ed30740fd94703d840c537c8311b3134 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=25.0.0-alpha6 ENV NEWS_SHA256_SUM=5846e79d4889925cbf83e2c72a6d4e2a4710cf3e0f67a910be5016c142bad16c 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.6.4 ENV SOCIAL_LOGIN_SHA256_SUM=648af2d41d965c8458351c3434b0016da75f7e17c7f8c194b621c724b72ce26f 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.20-8.3 ENV FPMUSER=nginx ENV FPMGROUP=nginx ENV PHP_MEMORY_LIMIT=512M RUN apk add --no-cache \ nginx \ ffmpeg \ php83-cli \ php83-pecl-apcu \ php83-opcache \ php83-pcntl \ php83-ctype \ php83-curl \ php83-dom \ php83-gd \ php83-iconv \ php83-xml \ php83-json \ php83-mbstring \ php83-openssl \ php83-posix \ php83-session \ php83-simplexml \ php83-xmlreader \ php83-xmlwriter \ php83-zip \ php83-zlib \ php83-pdo_pgsql \ php83-bz2 \ php83-fileinfo \ php83-intl \ php83-exif \ php83-bcmath \ php83-gmp \ php83-imap \ php83-pdo \ dcron 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" ]