diff --git a/Dockerfile b/Dockerfile deleted file mode 120000 index ee373d38..00000000 --- a/Dockerfile +++ /dev/null @@ -1 +0,0 @@ -Dockerfile.22.2 \ No newline at end of file diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 00000000..4da18a13 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,93 @@ +FROM ghcr.io/waja/nginx-php:8.0.13 + +ARG NEXTCLOUD_VERSION=22.2.3 +ARG GPG_nextcloud="2880 6A87 8AE4 23A2 8372 792E D758 99B9 A724 937A" + +# See http://label-schema.org/rc1/ and https://microbadger.com/labels +LABEL maintainer="Jan Wagner " \ + org.label-schema.name="Nextcloud v${NEXTCLOUD_VERSION}" \ + org.label-schema.description="A server software for creating file hosting services" \ + org.label-schema.vendor="Cyconet" \ + org.label-schema.schema-version="1.0" \ + org.label-schema.build-date="${BUILD_DATE:-unknown}" \ + org.label-schema.version="${BUILD_VERSION:-unknown}" \ + org.label-schema.vcs-url="${VCS_URL:-unknown}" \ + org.label-schema.vcs-ref="${VCS_REF:-unknown}" \ + org.label-schema.vcs-branch="${VCS_BRANCH:-unknown}" \ + org.opencontainers.image.source="https://github.com/waja/docker-nextcloud-legacy" + +ENV UID=991 GID=991 \ + UPLOAD_MAX_SIZE=10G \ + APC_SHM_SIZE=128M \ + OPCACHE_MEM_SIZE=128 \ + MEMORY_LIMIT=512M \ + PHP_MAX_CHILDREN=15 \ + PHP_START_SERVERS=2 \ + PHP_MIN_SPARE_SERVERS=1 \ + PHP_MAX_SPARE_SERVERS=6 \ + CRON_PERIOD=5m \ + CRON_MEMORY_LIMIT=1g \ + TZ=Etc/UTC \ + DB_TYPE=sqlite3 \ + DOMAIN=localhost \ + CHECK_PERMISSIONS=1 + +# hadolint ignore=DL3003,DL3018,SC2046,DL4006 +RUN apk -U --no-cache upgrade \ + && apk add --no-cache -t build-dependencies \ + gnupg \ + tar \ + build-base \ + autoconf \ + automake \ + pcre-dev \ + libtool \ + samba-dev \ + imagemagick-dev \ + && apk add --no-cache \ + libressl \ + ca-certificates \ + libsmbclient \ + imagemagick \ + libgomp \ + ffmpeg \ + tzdata \ + && pecl channel-update pecl.php.net \ + && pecl install \ + smbclient \ + apcu \ + redis \ + imagick \ + && echo "extension=smbclient.so" > /php/conf.d/smbclient.ini \ + && echo "extension=redis.so" > /php/conf.d/redis.ini \ + && echo "extension=imagick.so" > /php/conf.d/imagick.ini \ + && mkdir /nextcloud \ + && cd /tmp \ + && NEXTCLOUD_TARBALL="nextcloud-${NEXTCLOUD_VERSION}.tar.bz2" \ + && wget -q https://download.nextcloud.com/server/releases/${NEXTCLOUD_TARBALL} \ + && wget -q https://download.nextcloud.com/server/releases/${NEXTCLOUD_TARBALL}.sha512 \ + && wget -q https://download.nextcloud.com/server/releases/${NEXTCLOUD_TARBALL}.asc \ + && wget -q https://nextcloud.com/nextcloud.asc \ + && echo "Verifying both integrity and authenticity of ${NEXTCLOUD_TARBALL}..." \ + && CHECKSUM_STATE=$(echo -n $(sha512sum -c ${NEXTCLOUD_TARBALL}.sha512) | tail -c 2) \ + && if [ "${CHECKSUM_STATE}" != "OK" ]; then echo "Warning! Checksum does not match!" && exit 1; fi \ + && gpg --import nextcloud.asc \ + && FINGERPRINT="$(LANG=C gpg --verify ${NEXTCLOUD_TARBALL}.asc ${NEXTCLOUD_TARBALL} 2>&1 \ + | sed -n "s#Primary key fingerprint: \(.*\)#\1#p")" \ + && if [ -z "${FINGERPRINT}" ]; then echo "Warning! Invalid GPG signature!" && exit 1; fi \ + && if [ "${FINGERPRINT}" != "${GPG_nextcloud}" ]; then echo "Warning! Wrong GPG fingerprint!" && exit 1; fi \ + && echo "All seems good, now unpacking ${NEXTCLOUD_TARBALL}..." \ + && tar xjf ${NEXTCLOUD_TARBALL} --strip 1 -C /nextcloud \ + && update-ca-certificates \ + && apk del build-dependencies \ + && rm -rf /var/cache/apk/* /tmp/* /root/.gnupg + +COPY rootfs / + +RUN chmod +x /usr/local/bin/* /etc/s6.d/*/* /etc/s6.d/.s6-svscan/* + +VOLUME /data /config /apps2 /nextcloud/themes + +EXPOSE 8888 + +CMD ["run.sh"] diff --git a/Dockerfile.20.0 b/Dockerfile.20.0 index 944cb109..70b526d0 100644 --- a/Dockerfile.20.0 +++ b/Dockerfile.20.0 @@ -1,4 +1,4 @@ -FROM ghcr.io/waja/nginx-php:7.4 +FROM ghcr.io/waja/nginx-php:8.0.13 ARG NEXTCLOUD_VERSION=20.0.14 ARG GPG_nextcloud="2880 6A87 8AE4 23A2 8372 792E D758 99B9 A724 937A" diff --git a/Dockerfile.21.0 b/Dockerfile.21.0 index ac56f0c1..58dfb525 100644 --- a/Dockerfile.21.0 +++ b/Dockerfile.21.0 @@ -1,4 +1,4 @@ -FROM ghcr.io/waja/nginx-php:7.4 +FROM ghcr.io/waja/nginx-php:8.0.13 ARG NEXTCLOUD_VERSION=21.0.7 ARG GPG_nextcloud="2880 6A87 8AE4 23A2 8372 792E D758 99B9 A724 937A" diff --git a/Dockerfile.22.2 b/Dockerfile.22.2 index ef3142ab..4da18a13 100644 --- a/Dockerfile.22.2 +++ b/Dockerfile.22.2 @@ -1,4 +1,4 @@ -FROM ghcr.io/waja/nginx-php:7.4 +FROM ghcr.io/waja/nginx-php:8.0.13 ARG NEXTCLOUD_VERSION=22.2.3 ARG GPG_nextcloud="2880 6A87 8AE4 23A2 8372 792E D758 99B9 A724 937A" diff --git a/Dockerfile.23.0 b/Dockerfile.23.0 index c708520a..7bc297a6 100644 --- a/Dockerfile.23.0 +++ b/Dockerfile.23.0 @@ -1,4 +1,4 @@ -FROM ghcr.io/waja/nginx-php:8.0 +FROM ghcr.io/waja/nginx-php:8.0.13 ARG NEXTCLOUD_VERSION=23.0.0 ARG GPG_nextcloud="2880 6A87 8AE4 23A2 8372 792E D758 99B9 A724 937A"