FROM docker.io/alpine:3.17 AS builder ENV NC_VERSION=25.0.2 ENV NC_SHA256_SUM=d6ab40faa108937bda42395f570ff111f4c97343b55be1420024da3177e37d59 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=v6.4.1 ENV TFA_SHA256_SUM=59ad8feada69ef92310ac4c6e01e4343cfa24f347bca32818b864305cbfe00e2 RUN wget https://github.com/nextcloud-releases/twofactor_totp/releases/download/$TFA_VERSION/twofactor_totp-$TFA_VERSION.tar.gz RUN echo "$TFA_SHA256_SUM twofactor_totp-$TFA_VERSION.tar.gz" | sha256sum -c - || exit 1 RUN rm -r /var/lib/nextcloud/apps/twofactor_totp RUN mkdir /var/lib/nextcloud/apps/twofactor_totp RUN tar xzf twofactor_totp-$TFA_VERSION.tar.gz -C /var/lib/nextcloud/apps/twofactor_totp --strip 1 ENV POLLS_VERSION=4.0.0 ENV POLLS_SHA256_SUM=0459e3643bed174d4537909501124eac993cc385f92f2a72a1c1f1c7df0782bb 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=v5.0.2 ENV CONTACTS_SHA256_SUM=291204c4fd951e49bbfd5255edbbfc02d09621caa95e8e40d5d70fcaec938a57 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.1.1 ENV CALENDAR_SHA256_SUM=c28d5e0fbbce21c61488532df7da4031cbeb1b7958bb4ce6ac6c84e6b89cf777 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.14.5 ENV TASKS_SHA256_SUM=fdfa3168ac80eaef3e2de5009eee02a369acc8d35dfd8283d1f25423bdf3c532 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.6.0 ENV NOTES_SHA256_SUM=463126bbeb96f54c6a4876b680c6cff0951ddc65f3bb45d23f23044db80bae7b 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=20.0.0 ENV NEWS_SHA256_SUM=836d9d559cf20fb7687715b6587277c84b27cd6b7237eddf84c63d5b8cbbf7e1 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 MASTODON_INTEGRATION_VERSION=1.0.3 ENV MASTODON_INTEGRATION_SHA256_SUM=ff3a498dfd230950565c3091b9610afc80dccd17b4f219aa35a2109b22d091b4 RUN wget https://github.com/nextcloud/integration_mastodon/releases/download/v$MASTODON_INTEGRATION_VERSION/integration_mastodon-$MASTODON_INTEGRATION_VERSION.tar.gz RUN echo "$MASTODON_INTEGRATION_SHA256_SUM integration_mastodon-$MASTODON_INTEGRATION_VERSION.tar.gz" | sha256sum -c - || exit 1 RUN mkdir /var/lib/nextcloud/apps/integration_mastodon RUN tar xzf integration_mastodon-$MASTODON_INTEGRATION_VERSION.tar.gz -C /var/lib/nextcloud/apps/integration_mastodon --strip 1 ENV SOCIAL_LOGIN_VERSION=v5.1.5 ENV SOCIAL_LOGIN_SHA256_SUM=5b143988d41be46563b209dba5beaa30df747b9550e1777e247eb9b23bdff8f9 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.17 ENV FPMUSER=nginx ENV FPMGROUP=nginx ENV PHP_MEMORY_LIMIT=512M RUN apk add --no-cache \ nginx \ ffmpeg \ php81-cli \ php81-pecl-apcu \ php81-opcache \ php81-pcntl \ php81-ctype \ php81-curl \ php81-dom \ php81-gd \ php81-iconv \ php81-xml \ php81-json \ php81-mbstring \ php81-openssl \ php81-posix \ php81-session \ php81-simplexml \ php81-xmlreader \ php81-xmlwriter \ php81-zip \ php81-zlib \ php81-pdo_pgsql \ php81-bz2 \ php81-fileinfo \ php81-intl \ php81-exif \ php81-bcmath \ php81-gmp \ php81-imap \ 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" ]