upgrade to nextcloud 15

This commit is contained in:
Sebastian Hugentobler 2019-03-16 12:41:58 +01:00
parent 337839e8a2
commit f961a61d26
5 changed files with 103 additions and 47 deletions

View File

@ -1,31 +1,76 @@
FROM alpine:3.9 AS builder
ENV NC_VERSION=15.0.5
ENV NC_SHA256_SUM=4661869b797a340cd967abb3dbe6931b375434e0a44480346a27ccd73250b988
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=v2.1.2
ENV U2F_SHA256_SUM=aad32baf2d8bc2cb48ef59370c138965388d37457b7a5799573500fdf026ecc2
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.2
ENV POLLS_SHA256_SUM=2c43324d4499ff9316d82acd4ea242828da04d21bc463b8cc436d2c7f2c8ed2b
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
FROM thallian/php7-fpm:latest
ENV FPMUSER nginx
ENV FPMGROUP nginx
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 \
nextcloud \
nextcloud-user_ldap \
nextcloud-files_sharing \
nextcloud-files_texteditor \
nextcloud-files_pdfviewer \
nextcloud-files_videoplayer \
nextcloud-theming \
nextcloud-gallery \
nextcloud-twofactor_backupcodes \
nextcloud-pgsql \
ffmpeg \
php7-cli \
php7-opcache \
php7-pcntl \
php7-imagick
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 chown -R nginx:nginx /etc/nextcloud
RUN chown -R nginx:nginx /usr/share/webapps/nextcloud
RUN mkdir /run/nginx
RUN rm /etc/nginx/conf.d/default.conf
ADD /rootfs /
VOLUME [ "/var/lib/nextcloud/data", "/etc/nextcloud" ]
VOLUME [ "/var/lib/nextcloud/data", "/var/lib/nextcloud/config" ]

View File

@ -5,7 +5,7 @@ setting the app_path with occ.
# Volumes
- `/var/lib/nextcloud/data`
- `/etc/nextcloud/`
- `/var/lib/nextcloud/config`
# Environment Variables
## DOMAIN

View File

@ -16,7 +16,7 @@ server {
add_header X-Download-Options noopen;
add_header X-Permitted-Cross-Domain-Policies none;
root /usr/share/webapps/nextcloud/;
root /var/lib/nextcloud/;
location = /robots.txt {
allow all;

View File

@ -1,21 +1,25 @@
#!/usr/bin/with-contenv sh
set -ex
cd /usr/share/webapps/nextcloud
cd /var/lib/nextcloud
chmod +x ./occ
if [ ! -f /var/lib/nextcloud/data/.installed ]; then
s6-setuidgid nginx ./occ maintenance:install \
--database=pgsql \
--database-host=$DB_HOST \
--database-name=$DB_NAME \
--database-user=$DB_USER \
--database-pass=$DB_PASSWORD \
--database-table-prefix=$DB_TABLE_PREFIX \
--admin-user=$ADMIN_USER \
--admin-pass=$ADMIN_PASSWORD \
--database-host="$DB_HOST" \
--database-name="$DB_NAME" \
--database-user="$DB_USER" \
--database-pass="$DB_PASSWORD" \
--database-table-prefix="$DB_TABLE_PREFIX" \
--admin-user="$ADMIN_USER" \
--admin-pass="$ADMIN_PASSWORD" \
--data-dir=/var/lib/nextcloud/data/ \
--no-interaction
touch /var/lib/nextcloud/data/.installed
fi
s6-setuidgid nginx ./occ config:app:set --value cron core backgroundjobs_mode
s6-setuidgid nginx ./occ app:enable user_ldap
s6-setuidgid nginx ./occ app:enable files_sharing
@ -26,9 +30,17 @@ if [ ! -f /var/lib/nextcloud/data/.installed ]; then
s6-setuidgid nginx ./occ app:enable gallery
s6-setuidgid nginx ./occ app:enable twofactor_totp
s6-setuidgid nginx ./occ app:enable twofactor_backupcodes
touch /var/lib/nextcloud/data/.installed
fi
s6-setuidgid nginx ./occ app:enable twofactor_u2f
s6-setuidgid nginx ./occ app:enable polls
s6-setuidgid nginx ./occ app:disable activity
s6-setuidgid nginx ./occ app:disable comments
s6-setuidgid nginx ./occ app:disable files_trashbin
s6-setuidgid nginx ./occ app:disable firstrunwizard
s6-setuidgid nginx ./occ app:disable logreader
s6-setuidgid nginx ./occ app:disable password_policy
s6-setuidgid nginx ./occ app:disable support
s6-setuidgid nginx ./occ app:disable survey_client
s6-setuidgid nginx ./occ app:disable updatenotification
s6-setuidgid nginx ./occ config:system:set --value "https://$DOMAIN" overwrite.cli.url
s6-setuidgid nginx ./occ config:system:set --value "localhost" trusted_domains 0

View File

@ -1,3 +1,2 @@
/var/lib/nextcloud/ true nginx 0640 0750
/etc/nextcloud/ true nginx 0640 0750
/usr/share/webapps/nextcloud/apps true nginx 0640 0750
/var/lib/nextcloud/config true nginx 0640 0750