FROM docker.io/alpine:3.18 AS builder ENV NC_VERSION=27.0.2 ENV NC_SHA256_SUM=7a2dcea43aa3b8fb303347efda4c6f37733cca113c8ee16dd9f0e5fb68c7212f 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=5.2.0 ENV POLLS_SHA256_SUM=e28692b86fdcf3c13634716de3110001e52f13d11fcfd33c4692652732e914f8 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.3.2 ENV CONTACTS_SHA256_SUM=d6343ea722c13d4ec8e3048f9267b326aeee92b421f163c4ac6e09e8fb372d1e 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.4.4 ENV CALENDAR_SHA256_SUM=f147873a981b51fda81c73af2cde7cbfaf10bf20d84179128ec54a9fa506ac65 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.15.0 ENV TASKS_SHA256_SUM=9e2cc95050722bbf0567a28f278cdf394e59f42940c61c2043b77e5f94c69ccf 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.8.1 ENV NOTES_SHA256_SUM=05f1f55beed358a651b80021290110b65bfc78f4ed250bd941530cbb7cd42d1e 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=22.0.0 ENV NEWS_SHA256_SUM=5114977613fabe06120013d0746648b9c40507e3dbbbcdf02a3b9281d3a852d1 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=2.0.1 ENV MASTODON_INTEGRATION_SHA256_SUM=cef5aeb0176d050c6e1d82dd4db3113db4cb5784372b5c875f6aa6cb6419b3b8 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.4.3 ENV SOCIAL_LOGIN_SHA256_SUM=f9589d72620b9fca0457576b40b663f6a810d3d8443dee44cb1972f35e4b3e54 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.18-8.2 ENV FPMUSER=nginx ENV FPMGROUP=nginx ENV PHP_MEMORY_LIMIT=512M RUN apk add --no-cache \ nginx \ ffmpeg \ php82-cli \ php82-pecl-apcu \ php82-opcache \ php82-pcntl \ php82-ctype \ php82-curl \ php82-dom \ php82-gd \ php82-iconv \ php82-xml \ php82-json \ php82-mbstring \ php82-openssl \ php82-posix \ php82-session \ php82-simplexml \ php82-xmlreader \ php82-xmlwriter \ php82-zip \ php82-zlib \ php82-pdo_pgsql \ php82-bz2 \ php82-fileinfo \ php82-intl \ php82-exif \ php82-bcmath \ php82-gmp \ php82-imap \ php82-pdo \ dcron RUN ln -s /usr/bin/php82 /usr/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" ]