Compare commits
26 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
7e1fba34d7 | ||
|
|
f2ab521657 | ||
|
|
168c570a07 | ||
|
|
3323992cb0 | ||
|
|
722ea77ac0 | ||
|
|
8b4598357c | ||
|
|
dea057bebe | ||
|
|
4f4c97fcc5 | ||
|
|
32ff000966 | ||
|
|
e836e09e2f | ||
|
|
264d04f2a2 | ||
|
|
f158223d14 | ||
|
|
50bf6dc8f9 | ||
|
|
50826df6b5 | ||
|
|
646fc1b0e2 | ||
|
|
1f87830fd6 | ||
|
|
f5b7b40808 | ||
|
|
09beb3754b | ||
|
|
8043c5ed93 | ||
|
|
c8211b8672 | ||
|
|
2ac1f1346c | ||
|
|
4cf9a20fdf | ||
|
|
1907ded05a | ||
|
|
943e55d314 | ||
|
|
9a78a3478e | ||
|
|
6e4ccffb9a |
@ -14,7 +14,6 @@ http {
|
||||
default_type application/octet-stream;
|
||||
types {
|
||||
text/javascript mjs;
|
||||
application/wasm wasm;
|
||||
}
|
||||
|
||||
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
|
||||
|
||||
@ -14,7 +14,6 @@ http {
|
||||
default_type application/octet-stream;
|
||||
types {
|
||||
text/javascript mjs;
|
||||
application/wasm wasm;
|
||||
}
|
||||
|
||||
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
|
||||
|
||||
@ -14,7 +14,6 @@ http {
|
||||
default_type application/octet-stream;
|
||||
types {
|
||||
text/javascript mjs;
|
||||
application/wasm wasm;
|
||||
}
|
||||
|
||||
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
|
||||
|
||||
@ -14,7 +14,6 @@ http {
|
||||
default_type application/octet-stream;
|
||||
types {
|
||||
text/javascript mjs;
|
||||
application/wasm wasm;
|
||||
}
|
||||
|
||||
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
|
||||
|
||||
2
.github/workflows/update-sh.yml
vendored
2
.github/workflows/update-sh.yml
vendored
@ -5,7 +5,7 @@ on:
|
||||
branches:
|
||||
- master
|
||||
schedule:
|
||||
- cron: '15 0 * * *'
|
||||
- cron: '15 18 * * *'
|
||||
workflow_dispatch:
|
||||
|
||||
jobs:
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
# DO NOT EDIT: created by update.sh from Dockerfile-debian.template
|
||||
FROM php:8.3-apache-bookworm
|
||||
FROM php:8.3-apache-trixie
|
||||
|
||||
# entrypoint.sh and cron.sh dependencies
|
||||
RUN set -ex; \
|
||||
@ -9,10 +9,10 @@ RUN set -ex; \
|
||||
busybox-static \
|
||||
bzip2 \
|
||||
libldap-common \
|
||||
libmagickcore-6.q16-6-extra \
|
||||
libmagickcore-7.q16-10-extra \
|
||||
rsync \
|
||||
; \
|
||||
rm -rf /var/lib/apt/lists/*; \
|
||||
apt-get dist-clean; \
|
||||
\
|
||||
mkdir -p /var/spool/cron/crontabs; \
|
||||
echo '*/5 * * * * php -f /var/www/html/cron.php' > /var/spool/cron/crontabs/www-data
|
||||
@ -35,8 +35,8 @@ RUN set -ex; \
|
||||
libicu-dev \
|
||||
libjpeg-dev \
|
||||
libldap2-dev \
|
||||
liblz4-dev \
|
||||
libmagickwand-dev \
|
||||
libmcrypt-dev \
|
||||
libmemcached-dev \
|
||||
libpng-dev \
|
||||
libpq-dev \
|
||||
@ -57,7 +57,6 @@ RUN set -ex; \
|
||||
gmp \
|
||||
intl \
|
||||
ldap \
|
||||
opcache \
|
||||
pcntl \
|
||||
pdo_mysql \
|
||||
pdo_pgsql \
|
||||
@ -66,13 +65,13 @@ RUN set -ex; \
|
||||
; \
|
||||
\
|
||||
# pecl will claim success even if one install fails, so we need to perform each install separately
|
||||
pecl install APCu-5.1.25; \
|
||||
pecl install APCu-5.1.28; \
|
||||
pecl install igbinary-3.2.16; \
|
||||
pecl install imagick-3.8.0; \
|
||||
pecl install memcached-3.3.0 \
|
||||
--configureoptions 'enable-memcached-igbinary="yes"'; \
|
||||
pecl install redis-6.2.0 \
|
||||
--configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \
|
||||
pecl install imagick-3.8.1; \
|
||||
pecl install --configureoptions 'enable-memcached-igbinary="yes"' \
|
||||
memcached-3.4.0; \
|
||||
pecl install --configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"' \
|
||||
redis-6.3.0; \
|
||||
\
|
||||
docker-php-ext-enable \
|
||||
apcu \
|
||||
@ -89,13 +88,14 @@ RUN set -ex; \
|
||||
ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \
|
||||
| awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' \
|
||||
| sort -u \
|
||||
| xargs -r dpkg-query --search \
|
||||
| cut -d: -f1 \
|
||||
| xargs -rt dpkg-query --search \
|
||||
# https://manpages.debian.org/trixie/dpkg/dpkg-query.1.en.html#S (we ignore diversions and it'll be really unusual for more than one package to provide any given .so file)
|
||||
| awk 'sub(":$", "", $1) { print $1 }' \
|
||||
| sort -u \
|
||||
| xargs -rt apt-mark manual; \
|
||||
\
|
||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
apt-get dist-clean
|
||||
|
||||
# set recommended PHP.ini settings
|
||||
# see https://docs.nextcloud.com/server/latest/admin_manual/installation/server_tuning.html#enable-php-opcache
|
||||
@ -150,7 +150,7 @@ RUN { \
|
||||
} > /etc/apache2/conf-available/apache-limits.conf; \
|
||||
a2enconf apache-limits
|
||||
|
||||
ENV NEXTCLOUD_VERSION 31.0.7
|
||||
ENV NEXTCLOUD_VERSION 31.0.12
|
||||
|
||||
RUN set -ex; \
|
||||
fetchDeps=" \
|
||||
@ -160,8 +160,8 @@ RUN set -ex; \
|
||||
apt-get update; \
|
||||
apt-get install -y --no-install-recommends $fetchDeps; \
|
||||
\
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-31.0.7.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-31.0.7.tar.bz2.asc"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://github.com/nextcloud-releases/server/releases/download/v31.0.12/nextcloud-31.0.12.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://github.com/nextcloud-releases/server/releases/download/v31.0.12/nextcloud-31.0.12.tar.bz2.asc"; \
|
||||
export GNUPGHOME="$(mktemp -d)"; \
|
||||
# gpg key from https://nextcloud.com/nextcloud.asc
|
||||
gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \
|
||||
@ -175,7 +175,7 @@ RUN set -ex; \
|
||||
chmod +x /usr/src/nextcloud/occ; \
|
||||
\
|
||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps; \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
apt-get dist-clean
|
||||
|
||||
COPY *.sh upgrade.exclude /
|
||||
COPY config/* /usr/src/nextcloud/config/
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
# DO NOT EDIT: created by update.sh from Dockerfile-alpine.template
|
||||
FROM php:8.3-fpm-alpine3.22
|
||||
FROM php:8.3-fpm-alpine3.23
|
||||
|
||||
# entrypoint.sh and cron.sh dependencies
|
||||
RUN set -ex; \
|
||||
@ -32,7 +32,6 @@ RUN set -ex; \
|
||||
imagemagick-dev \
|
||||
libevent-dev \
|
||||
libjpeg-turbo-dev \
|
||||
libmcrypt-dev \
|
||||
libmemcached-dev \
|
||||
libpng-dev \
|
||||
libwebp-dev \
|
||||
@ -54,7 +53,6 @@ RUN set -ex; \
|
||||
gmp \
|
||||
intl \
|
||||
ldap \
|
||||
opcache \
|
||||
pcntl \
|
||||
pdo_mysql \
|
||||
pdo_pgsql \
|
||||
@ -63,13 +61,13 @@ RUN set -ex; \
|
||||
; \
|
||||
\
|
||||
# pecl will claim success even if one install fails, so we need to perform each install separately
|
||||
pecl install APCu-5.1.25; \
|
||||
pecl install APCu-5.1.28; \
|
||||
pecl install igbinary-3.2.16; \
|
||||
pecl install imagick-3.8.0; \
|
||||
pecl install memcached-3.3.0 \
|
||||
--configureoptions 'enable-memcached-igbinary="yes"'; \
|
||||
pecl install redis-6.2.0 \
|
||||
--configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \
|
||||
pecl install imagick-3.8.1; \
|
||||
pecl install --configureoptions 'enable-memcached-igbinary="yes"' \
|
||||
memcached-3.4.0; \
|
||||
pecl install --configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"' \
|
||||
redis-6.3.0; \
|
||||
\
|
||||
docker-php-ext-enable \
|
||||
apcu \
|
||||
@ -130,7 +128,7 @@ RUN { \
|
||||
VOLUME /var/www/html
|
||||
|
||||
|
||||
ENV NEXTCLOUD_VERSION 31.0.7
|
||||
ENV NEXTCLOUD_VERSION 31.0.12
|
||||
|
||||
RUN set -ex; \
|
||||
apk add --no-cache --virtual .fetch-deps \
|
||||
@ -138,8 +136,8 @@ RUN set -ex; \
|
||||
gnupg \
|
||||
; \
|
||||
\
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-31.0.7.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-31.0.7.tar.bz2.asc"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://github.com/nextcloud-releases/server/releases/download/v31.0.12/nextcloud-31.0.12.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://github.com/nextcloud-releases/server/releases/download/v31.0.12/nextcloud-31.0.12.tar.bz2.asc"; \
|
||||
export GNUPGHOME="$(mktemp -d)"; \
|
||||
# gpg key from https://nextcloud.com/nextcloud.asc
|
||||
gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
# DO NOT EDIT: created by update.sh from Dockerfile-debian.template
|
||||
FROM php:8.3-fpm-bookworm
|
||||
FROM php:8.3-fpm-trixie
|
||||
|
||||
# entrypoint.sh and cron.sh dependencies
|
||||
RUN set -ex; \
|
||||
@ -9,10 +9,10 @@ RUN set -ex; \
|
||||
busybox-static \
|
||||
bzip2 \
|
||||
libldap-common \
|
||||
libmagickcore-6.q16-6-extra \
|
||||
libmagickcore-7.q16-10-extra \
|
||||
rsync \
|
||||
; \
|
||||
rm -rf /var/lib/apt/lists/*; \
|
||||
apt-get dist-clean; \
|
||||
\
|
||||
mkdir -p /var/spool/cron/crontabs; \
|
||||
echo '*/5 * * * * php -f /var/www/html/cron.php' > /var/spool/cron/crontabs/www-data
|
||||
@ -35,8 +35,8 @@ RUN set -ex; \
|
||||
libicu-dev \
|
||||
libjpeg-dev \
|
||||
libldap2-dev \
|
||||
liblz4-dev \
|
||||
libmagickwand-dev \
|
||||
libmcrypt-dev \
|
||||
libmemcached-dev \
|
||||
libpng-dev \
|
||||
libpq-dev \
|
||||
@ -57,7 +57,6 @@ RUN set -ex; \
|
||||
gmp \
|
||||
intl \
|
||||
ldap \
|
||||
opcache \
|
||||
pcntl \
|
||||
pdo_mysql \
|
||||
pdo_pgsql \
|
||||
@ -66,13 +65,13 @@ RUN set -ex; \
|
||||
; \
|
||||
\
|
||||
# pecl will claim success even if one install fails, so we need to perform each install separately
|
||||
pecl install APCu-5.1.25; \
|
||||
pecl install APCu-5.1.28; \
|
||||
pecl install igbinary-3.2.16; \
|
||||
pecl install imagick-3.8.0; \
|
||||
pecl install memcached-3.3.0 \
|
||||
--configureoptions 'enable-memcached-igbinary="yes"'; \
|
||||
pecl install redis-6.2.0 \
|
||||
--configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \
|
||||
pecl install imagick-3.8.1; \
|
||||
pecl install --configureoptions 'enable-memcached-igbinary="yes"' \
|
||||
memcached-3.4.0; \
|
||||
pecl install --configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"' \
|
||||
redis-6.3.0; \
|
||||
\
|
||||
docker-php-ext-enable \
|
||||
apcu \
|
||||
@ -89,13 +88,14 @@ RUN set -ex; \
|
||||
ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \
|
||||
| awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' \
|
||||
| sort -u \
|
||||
| xargs -r dpkg-query --search \
|
||||
| cut -d: -f1 \
|
||||
| xargs -rt dpkg-query --search \
|
||||
# https://manpages.debian.org/trixie/dpkg/dpkg-query.1.en.html#S (we ignore diversions and it'll be really unusual for more than one package to provide any given .so file)
|
||||
| awk 'sub(":$", "", $1) { print $1 }' \
|
||||
| sort -u \
|
||||
| xargs -rt apt-mark manual; \
|
||||
\
|
||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
apt-get dist-clean
|
||||
|
||||
# set recommended PHP.ini settings
|
||||
# see https://docs.nextcloud.com/server/latest/admin_manual/installation/server_tuning.html#enable-php-opcache
|
||||
@ -135,7 +135,7 @@ RUN { \
|
||||
VOLUME /var/www/html
|
||||
|
||||
|
||||
ENV NEXTCLOUD_VERSION 31.0.7
|
||||
ENV NEXTCLOUD_VERSION 31.0.12
|
||||
|
||||
RUN set -ex; \
|
||||
fetchDeps=" \
|
||||
@ -145,8 +145,8 @@ RUN set -ex; \
|
||||
apt-get update; \
|
||||
apt-get install -y --no-install-recommends $fetchDeps; \
|
||||
\
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-31.0.7.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-31.0.7.tar.bz2.asc"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://github.com/nextcloud-releases/server/releases/download/v31.0.12/nextcloud-31.0.12.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://github.com/nextcloud-releases/server/releases/download/v31.0.12/nextcloud-31.0.12.tar.bz2.asc"; \
|
||||
export GNUPGHOME="$(mktemp -d)"; \
|
||||
# gpg key from https://nextcloud.com/nextcloud.asc
|
||||
gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \
|
||||
@ -160,7 +160,7 @@ RUN set -ex; \
|
||||
chmod +x /usr/src/nextcloud/occ; \
|
||||
\
|
||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps; \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
apt-get dist-clean
|
||||
|
||||
COPY *.sh upgrade.exclude /
|
||||
COPY config/* /usr/src/nextcloud/config/
|
||||
|
||||
@ -1,5 +1,5 @@
|
||||
# DO NOT EDIT: created by update.sh from Dockerfile-debian.template
|
||||
FROM php:8.3-apache-bookworm
|
||||
FROM php:8.3-apache-trixie
|
||||
|
||||
# entrypoint.sh and cron.sh dependencies
|
||||
RUN set -ex; \
|
||||
@ -9,10 +9,10 @@ RUN set -ex; \
|
||||
busybox-static \
|
||||
bzip2 \
|
||||
libldap-common \
|
||||
libmagickcore-6.q16-6-extra \
|
||||
libmagickcore-7.q16-10-extra \
|
||||
rsync \
|
||||
; \
|
||||
rm -rf /var/lib/apt/lists/*; \
|
||||
apt-get dist-clean; \
|
||||
\
|
||||
mkdir -p /var/spool/cron/crontabs; \
|
||||
echo '*/5 * * * * php -f /var/www/html/cron.php' > /var/spool/cron/crontabs/www-data
|
||||
@ -35,8 +35,8 @@ RUN set -ex; \
|
||||
libicu-dev \
|
||||
libjpeg-dev \
|
||||
libldap2-dev \
|
||||
liblz4-dev \
|
||||
libmagickwand-dev \
|
||||
libmcrypt-dev \
|
||||
libmemcached-dev \
|
||||
libpng-dev \
|
||||
libpq-dev \
|
||||
@ -57,7 +57,6 @@ RUN set -ex; \
|
||||
gmp \
|
||||
intl \
|
||||
ldap \
|
||||
opcache \
|
||||
pcntl \
|
||||
pdo_mysql \
|
||||
pdo_pgsql \
|
||||
@ -66,13 +65,13 @@ RUN set -ex; \
|
||||
; \
|
||||
\
|
||||
# pecl will claim success even if one install fails, so we need to perform each install separately
|
||||
pecl install APCu-5.1.25; \
|
||||
pecl install APCu-5.1.28; \
|
||||
pecl install igbinary-3.2.16; \
|
||||
pecl install imagick-3.8.0; \
|
||||
pecl install memcached-3.3.0 \
|
||||
--configureoptions 'enable-memcached-igbinary="yes"'; \
|
||||
pecl install redis-6.2.0 \
|
||||
--configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \
|
||||
pecl install imagick-3.8.1; \
|
||||
pecl install --configureoptions 'enable-memcached-igbinary="yes"' \
|
||||
memcached-3.4.0; \
|
||||
pecl install --configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"' \
|
||||
redis-6.3.0; \
|
||||
\
|
||||
docker-php-ext-enable \
|
||||
apcu \
|
||||
@ -89,13 +88,14 @@ RUN set -ex; \
|
||||
ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \
|
||||
| awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' \
|
||||
| sort -u \
|
||||
| xargs -r dpkg-query --search \
|
||||
| cut -d: -f1 \
|
||||
| xargs -rt dpkg-query --search \
|
||||
# https://manpages.debian.org/trixie/dpkg/dpkg-query.1.en.html#S (we ignore diversions and it'll be really unusual for more than one package to provide any given .so file)
|
||||
| awk 'sub(":$", "", $1) { print $1 }' \
|
||||
| sort -u \
|
||||
| xargs -rt apt-mark manual; \
|
||||
\
|
||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
apt-get dist-clean
|
||||
|
||||
# set recommended PHP.ini settings
|
||||
# see https://docs.nextcloud.com/server/latest/admin_manual/installation/server_tuning.html#enable-php-opcache
|
||||
@ -150,7 +150,7 @@ RUN { \
|
||||
} > /etc/apache2/conf-available/apache-limits.conf; \
|
||||
a2enconf apache-limits
|
||||
|
||||
ENV NEXTCLOUD_VERSION 30.0.13
|
||||
ENV NEXTCLOUD_VERSION 32.0.3
|
||||
|
||||
RUN set -ex; \
|
||||
fetchDeps=" \
|
||||
@ -160,8 +160,8 @@ RUN set -ex; \
|
||||
apt-get update; \
|
||||
apt-get install -y --no-install-recommends $fetchDeps; \
|
||||
\
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-30.0.13.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-30.0.13.tar.bz2.asc"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://github.com/nextcloud-releases/server/releases/download/v32.0.3/nextcloud-32.0.3.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://github.com/nextcloud-releases/server/releases/download/v32.0.3/nextcloud-32.0.3.tar.bz2.asc"; \
|
||||
export GNUPGHOME="$(mktemp -d)"; \
|
||||
# gpg key from https://nextcloud.com/nextcloud.asc
|
||||
gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \
|
||||
@ -175,7 +175,7 @@ RUN set -ex; \
|
||||
chmod +x /usr/src/nextcloud/occ; \
|
||||
\
|
||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps; \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
apt-get dist-clean
|
||||
|
||||
COPY *.sh upgrade.exclude /
|
||||
COPY config/* /usr/src/nextcloud/config/
|
||||
@ -1,5 +1,5 @@
|
||||
# DO NOT EDIT: created by update.sh from Dockerfile-alpine.template
|
||||
FROM php:8.3-fpm-alpine3.22
|
||||
FROM php:8.3-fpm-alpine3.23
|
||||
|
||||
# entrypoint.sh and cron.sh dependencies
|
||||
RUN set -ex; \
|
||||
@ -32,7 +32,6 @@ RUN set -ex; \
|
||||
imagemagick-dev \
|
||||
libevent-dev \
|
||||
libjpeg-turbo-dev \
|
||||
libmcrypt-dev \
|
||||
libmemcached-dev \
|
||||
libpng-dev \
|
||||
libwebp-dev \
|
||||
@ -54,7 +53,6 @@ RUN set -ex; \
|
||||
gmp \
|
||||
intl \
|
||||
ldap \
|
||||
opcache \
|
||||
pcntl \
|
||||
pdo_mysql \
|
||||
pdo_pgsql \
|
||||
@ -63,13 +61,13 @@ RUN set -ex; \
|
||||
; \
|
||||
\
|
||||
# pecl will claim success even if one install fails, so we need to perform each install separately
|
||||
pecl install APCu-5.1.25; \
|
||||
pecl install APCu-5.1.28; \
|
||||
pecl install igbinary-3.2.16; \
|
||||
pecl install imagick-3.8.0; \
|
||||
pecl install memcached-3.3.0 \
|
||||
--configureoptions 'enable-memcached-igbinary="yes"'; \
|
||||
pecl install redis-6.2.0 \
|
||||
--configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \
|
||||
pecl install imagick-3.8.1; \
|
||||
pecl install --configureoptions 'enable-memcached-igbinary="yes"' \
|
||||
memcached-3.4.0; \
|
||||
pecl install --configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"' \
|
||||
redis-6.3.0; \
|
||||
\
|
||||
docker-php-ext-enable \
|
||||
apcu \
|
||||
@ -130,7 +128,7 @@ RUN { \
|
||||
VOLUME /var/www/html
|
||||
|
||||
|
||||
ENV NEXTCLOUD_VERSION 30.0.13
|
||||
ENV NEXTCLOUD_VERSION 32.0.3
|
||||
|
||||
RUN set -ex; \
|
||||
apk add --no-cache --virtual .fetch-deps \
|
||||
@ -138,8 +136,8 @@ RUN set -ex; \
|
||||
gnupg \
|
||||
; \
|
||||
\
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-30.0.13.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-30.0.13.tar.bz2.asc"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://github.com/nextcloud-releases/server/releases/download/v32.0.3/nextcloud-32.0.3.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://github.com/nextcloud-releases/server/releases/download/v32.0.3/nextcloud-32.0.3.tar.bz2.asc"; \
|
||||
export GNUPGHOME="$(mktemp -d)"; \
|
||||
# gpg key from https://nextcloud.com/nextcloud.asc
|
||||
gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \
|
||||
@ -1,5 +1,5 @@
|
||||
# DO NOT EDIT: created by update.sh from Dockerfile-debian.template
|
||||
FROM php:8.3-fpm-bookworm
|
||||
FROM php:8.3-fpm-trixie
|
||||
|
||||
# entrypoint.sh and cron.sh dependencies
|
||||
RUN set -ex; \
|
||||
@ -9,10 +9,10 @@ RUN set -ex; \
|
||||
busybox-static \
|
||||
bzip2 \
|
||||
libldap-common \
|
||||
libmagickcore-6.q16-6-extra \
|
||||
libmagickcore-7.q16-10-extra \
|
||||
rsync \
|
||||
; \
|
||||
rm -rf /var/lib/apt/lists/*; \
|
||||
apt-get dist-clean; \
|
||||
\
|
||||
mkdir -p /var/spool/cron/crontabs; \
|
||||
echo '*/5 * * * * php -f /var/www/html/cron.php' > /var/spool/cron/crontabs/www-data
|
||||
@ -35,8 +35,8 @@ RUN set -ex; \
|
||||
libicu-dev \
|
||||
libjpeg-dev \
|
||||
libldap2-dev \
|
||||
liblz4-dev \
|
||||
libmagickwand-dev \
|
||||
libmcrypt-dev \
|
||||
libmemcached-dev \
|
||||
libpng-dev \
|
||||
libpq-dev \
|
||||
@ -57,7 +57,6 @@ RUN set -ex; \
|
||||
gmp \
|
||||
intl \
|
||||
ldap \
|
||||
opcache \
|
||||
pcntl \
|
||||
pdo_mysql \
|
||||
pdo_pgsql \
|
||||
@ -66,13 +65,13 @@ RUN set -ex; \
|
||||
; \
|
||||
\
|
||||
# pecl will claim success even if one install fails, so we need to perform each install separately
|
||||
pecl install APCu-5.1.25; \
|
||||
pecl install APCu-5.1.28; \
|
||||
pecl install igbinary-3.2.16; \
|
||||
pecl install imagick-3.8.0; \
|
||||
pecl install memcached-3.3.0 \
|
||||
--configureoptions 'enable-memcached-igbinary="yes"'; \
|
||||
pecl install redis-6.2.0 \
|
||||
--configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \
|
||||
pecl install imagick-3.8.1; \
|
||||
pecl install --configureoptions 'enable-memcached-igbinary="yes"' \
|
||||
memcached-3.4.0; \
|
||||
pecl install --configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"' \
|
||||
redis-6.3.0; \
|
||||
\
|
||||
docker-php-ext-enable \
|
||||
apcu \
|
||||
@ -89,13 +88,14 @@ RUN set -ex; \
|
||||
ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \
|
||||
| awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' \
|
||||
| sort -u \
|
||||
| xargs -r dpkg-query --search \
|
||||
| cut -d: -f1 \
|
||||
| xargs -rt dpkg-query --search \
|
||||
# https://manpages.debian.org/trixie/dpkg/dpkg-query.1.en.html#S (we ignore diversions and it'll be really unusual for more than one package to provide any given .so file)
|
||||
| awk 'sub(":$", "", $1) { print $1 }' \
|
||||
| sort -u \
|
||||
| xargs -rt apt-mark manual; \
|
||||
\
|
||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
apt-get dist-clean
|
||||
|
||||
# set recommended PHP.ini settings
|
||||
# see https://docs.nextcloud.com/server/latest/admin_manual/installation/server_tuning.html#enable-php-opcache
|
||||
@ -135,7 +135,7 @@ RUN { \
|
||||
VOLUME /var/www/html
|
||||
|
||||
|
||||
ENV NEXTCLOUD_VERSION 30.0.13
|
||||
ENV NEXTCLOUD_VERSION 32.0.3
|
||||
|
||||
RUN set -ex; \
|
||||
fetchDeps=" \
|
||||
@ -145,8 +145,8 @@ RUN set -ex; \
|
||||
apt-get update; \
|
||||
apt-get install -y --no-install-recommends $fetchDeps; \
|
||||
\
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-30.0.13.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-30.0.13.tar.bz2.asc"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://github.com/nextcloud-releases/server/releases/download/v32.0.3/nextcloud-32.0.3.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://github.com/nextcloud-releases/server/releases/download/v32.0.3/nextcloud-32.0.3.tar.bz2.asc"; \
|
||||
export GNUPGHOME="$(mktemp -d)"; \
|
||||
# gpg key from https://nextcloud.com/nextcloud.asc
|
||||
gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \
|
||||
@ -160,7 +160,7 @@ RUN set -ex; \
|
||||
chmod +x /usr/src/nextcloud/occ; \
|
||||
\
|
||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps; \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
apt-get dist-clean
|
||||
|
||||
COPY *.sh upgrade.exclude /
|
||||
COPY config/* /usr/src/nextcloud/config/
|
||||
@ -31,7 +31,6 @@ RUN set -ex; \
|
||||
imagemagick-dev \
|
||||
libevent-dev \
|
||||
libjpeg-turbo-dev \
|
||||
libmcrypt-dev \
|
||||
libmemcached-dev \
|
||||
libpng-dev \
|
||||
libwebp-dev \
|
||||
@ -53,7 +52,6 @@ RUN set -ex; \
|
||||
gmp \
|
||||
intl \
|
||||
ldap \
|
||||
opcache \
|
||||
pcntl \
|
||||
pdo_mysql \
|
||||
pdo_pgsql \
|
||||
@ -65,10 +63,10 @@ RUN set -ex; \
|
||||
pecl install APCu-%%APCU_VERSION%%; \
|
||||
pecl install igbinary-%%IGBINARY_VERSION%%; \
|
||||
pecl install imagick-%%IMAGICK_VERSION%%; \
|
||||
pecl install memcached-%%MEMCACHED_VERSION%% \
|
||||
--configureoptions 'enable-memcached-igbinary="yes"'; \
|
||||
pecl install redis-%%REDIS_VERSION%% \
|
||||
--configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \
|
||||
pecl install --configureoptions 'enable-memcached-igbinary="yes"' \
|
||||
memcached-%%MEMCACHED_VERSION%%; \
|
||||
pecl install --configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"' \
|
||||
redis-%%REDIS_VERSION%%; \
|
||||
\
|
||||
docker-php-ext-enable \
|
||||
apcu \
|
||||
|
||||
@ -8,10 +8,10 @@ RUN set -ex; \
|
||||
busybox-static \
|
||||
bzip2 \
|
||||
libldap-common \
|
||||
libmagickcore-6.q16-6-extra \
|
||||
libmagickcore-7.q16-10-extra \
|
||||
rsync \
|
||||
; \
|
||||
rm -rf /var/lib/apt/lists/*; \
|
||||
apt-get dist-clean; \
|
||||
\
|
||||
mkdir -p /var/spool/cron/crontabs; \
|
||||
echo '*/%%CRONTAB_INT%% * * * * php -f /var/www/html/cron.php' > /var/spool/cron/crontabs/www-data
|
||||
@ -34,8 +34,8 @@ RUN set -ex; \
|
||||
libicu-dev \
|
||||
libjpeg-dev \
|
||||
libldap2-dev \
|
||||
liblz4-dev \
|
||||
libmagickwand-dev \
|
||||
libmcrypt-dev \
|
||||
libmemcached-dev \
|
||||
libpng-dev \
|
||||
libpq-dev \
|
||||
@ -56,7 +56,6 @@ RUN set -ex; \
|
||||
gmp \
|
||||
intl \
|
||||
ldap \
|
||||
opcache \
|
||||
pcntl \
|
||||
pdo_mysql \
|
||||
pdo_pgsql \
|
||||
@ -68,10 +67,10 @@ RUN set -ex; \
|
||||
pecl install APCu-%%APCU_VERSION%%; \
|
||||
pecl install igbinary-%%IGBINARY_VERSION%%; \
|
||||
pecl install imagick-%%IMAGICK_VERSION%%; \
|
||||
pecl install memcached-%%MEMCACHED_VERSION%% \
|
||||
--configureoptions 'enable-memcached-igbinary="yes"'; \
|
||||
pecl install redis-%%REDIS_VERSION%% \
|
||||
--configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \
|
||||
pecl install --configureoptions 'enable-memcached-igbinary="yes"' \
|
||||
memcached-%%MEMCACHED_VERSION%%; \
|
||||
pecl install --configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"' \
|
||||
redis-%%REDIS_VERSION%%; \
|
||||
\
|
||||
docker-php-ext-enable \
|
||||
apcu \
|
||||
@ -88,13 +87,14 @@ RUN set -ex; \
|
||||
ldd "$(php -r 'echo ini_get("extension_dir");')"/*.so \
|
||||
| awk '/=>/ { so = $(NF-1); if (index(so, "/usr/local/") == 1) { next }; gsub("^/(usr/)?", "", so); print so }' \
|
||||
| sort -u \
|
||||
| xargs -r dpkg-query --search \
|
||||
| cut -d: -f1 \
|
||||
| xargs -rt dpkg-query --search \
|
||||
# https://manpages.debian.org/trixie/dpkg/dpkg-query.1.en.html#S (we ignore diversions and it'll be really unusual for more than one package to provide any given .so file)
|
||||
| awk 'sub(":$", "", $1) { print $1 }' \
|
||||
| sort -u \
|
||||
| xargs -rt apt-mark manual; \
|
||||
\
|
||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
apt-get dist-clean
|
||||
|
||||
# set recommended PHP.ini settings
|
||||
# see https://docs.nextcloud.com/server/latest/admin_manual/installation/server_tuning.html#enable-php-opcache
|
||||
@ -159,7 +159,7 @@ RUN set -ex; \
|
||||
chmod +x /usr/src/nextcloud/occ; \
|
||||
\
|
||||
apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false $fetchDeps; \
|
||||
rm -rf /var/lib/apt/lists/*
|
||||
apt-get dist-clean
|
||||
|
||||
COPY *.sh upgrade.exclude /
|
||||
COPY config/* /usr/src/nextcloud/config/
|
||||
|
||||
40
README.md
40
README.md
@ -15,6 +15,46 @@ A safe home for all your data. Access & share your files, calendars, contacts, m
|
||||
|
||||
⚠️⚠️⚠️ This image is maintained by community volunteers and designed for expert use. For quick and easy deployment that supports the full set of Nextcloud Hub features, use the [Nextcloud All-in-One docker container](https://github.com/nextcloud/all-in-one#nextcloud-all-in-one) maintained by Nextcloud GmbH.
|
||||
|
||||
## Table of Contents
|
||||
- [What is Nextcloud?](#what-is-nextcloud)
|
||||
- [How to use this image](#how-to-use-this-image)
|
||||
- [Getting help](#getting-help)
|
||||
- [Using the apache image](#using-the-apache-image)
|
||||
- [Using the fpm image](#using-the-fpm-image)
|
||||
- [Using an external database](#using-an-external-database)
|
||||
- [Persistent data](#persistent-data)
|
||||
- [Additional volumes](#additional-volumes)
|
||||
- [Custom volumes](#custom-volumes)
|
||||
- [Running as an arbitrary user / file permissions / changing the default container user](#running-as-an-arbitrary-user--file-permissions--changing-the-default-container-user)
|
||||
- [Accessing the Nextcloud command-line interface (`occ`)](#accessing-the-nextcloud-command-line-interface-occ)
|
||||
- [Viewing the Nextcloud configuration (`config.php`)](#viewing-the-nextcloud-configuration-configphp)
|
||||
- [Auto configuration via environment variables](#auto-configuration-via-environment-variables)
|
||||
- [Database parameters](#database-parameters)
|
||||
- [Initial admin account](#initial-admin-account)
|
||||
- [Custom Data directory (`datadirectory`)](#custom-data-directory-datadirectory)
|
||||
- [Trusted domains (`trusted_domains`)](#trusted-domains-trusted_domains)
|
||||
- [Image specific](#image-specific)
|
||||
- [Redis Memory Caching](#redis-memory-caching)
|
||||
- [E-mail (SMTP) Configuration](#e-mail-smtp-configuration)
|
||||
- [Object Storage (Primary Storage)](#object-storage-primary-storage)
|
||||
- [PHP Configuration](#php-configuration)
|
||||
- [Apache Configuration](#apache-configuration)
|
||||
- [Using the image behind a reverse proxy and specifying the server host and protocol](#using-the-image-behind-a-reverse-proxy-and-specifying-the-server-host-and-protocol)
|
||||
- [Handling `Warning: /var/www/html/config/$cfgFile differs from the latest version of this image at /usr/src/nextcloud/config/$cfgFile` (aka: Auto configuration and Nextcloud updates)](#handling-warning-varwwwhtmlconfigcfgfile-differs-from-the-latest-version-of-this-image-at-usrsrcnextcloudconfigcfgfile-aka-auto-configuration-and-nextcloud-updates)
|
||||
- [Auto configuration via hook folders](#auto-configuration-via-hook-folders)
|
||||
- [Running this image with `docker compose`](#running-this-image-with-docker-compose)
|
||||
- [Base version - apache](#base-version---apache)
|
||||
- [Base version - FPM](#base-version---fpm)
|
||||
- [Docker Secrets](#docker-secrets)
|
||||
- [Make your Nextcloud available from the internet](#make-your-nextcloud-available-from-the-internet)
|
||||
- [HTTPS - SSL encryption](#https---ssl-encryption)
|
||||
- [First use](#first-use)
|
||||
- [Update to a newer version](#update-to-a-newer-version)
|
||||
- [Adding Features](#adding-features)
|
||||
- [Migrating an existing installation](#migrating-an-existing-installation)
|
||||
- [Migrating from a non-Alpine image to an Alpine image](#migrating-from-a-non-alpine-image-to-an-alpine-image)
|
||||
- [Reporting bugs or suggesting enhancements](#reporting-bugs-or-suggesting-enhancements)
|
||||
|
||||
# How to use this image
|
||||
This image is designed to be used in a micro-service environment. There are two versions of the image you can choose from.
|
||||
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
#!/usr/bin/env bash
|
||||
set -Eeuo pipefail
|
||||
|
||||
stable_channel='31.0.7'
|
||||
stable_channel='31.0.12'
|
||||
|
||||
self="$(basename "$BASH_SOURCE")"
|
||||
cd "$(dirname "$(readlink -f "$BASH_SOURCE")")"
|
||||
|
||||
@ -1 +1 @@
|
||||
31.0.7
|
||||
32.0.3
|
||||
|
||||
10
update.sh
10
update.sh
@ -2,11 +2,11 @@
|
||||
set -eo pipefail
|
||||
|
||||
declare -A alpine_version=(
|
||||
[default]='3.22'
|
||||
[default]='3.23'
|
||||
)
|
||||
|
||||
declare -A debian_version=(
|
||||
[default]='bookworm'
|
||||
[default]='trixie'
|
||||
)
|
||||
|
||||
declare -A php_version=(
|
||||
@ -94,7 +94,7 @@ variants=(
|
||||
fpm-alpine
|
||||
)
|
||||
|
||||
min_version='30'
|
||||
min_version='31'
|
||||
|
||||
# version_greater_or_equal A B returns whether A >= B
|
||||
function version_greater_or_equal() {
|
||||
@ -107,8 +107,8 @@ function create_variant() {
|
||||
debianVersion=${debian_version[$version]-${debian_version[default]}}
|
||||
phpVersion=${php_version[$version]-${php_version[default]}}
|
||||
crontabInt=${crontab_int[$version]-${crontab_int[default]}}
|
||||
url="https://download.nextcloud.com/server/releases/nextcloud-$fullversion.tar.bz2"
|
||||
ascUrl="https://download.nextcloud.com/server/releases/nextcloud-$fullversion.tar.bz2.asc"
|
||||
url="https://github.com/nextcloud-releases/server/releases/download/v$fullversion/nextcloud-$fullversion.tar.bz2"
|
||||
ascUrl="https://github.com/nextcloud-releases/server/releases/download/v$fullversion/nextcloud-$fullversion.tar.bz2.asc"
|
||||
|
||||
# Create the version+variant directory with a Dockerfile.
|
||||
mkdir -p "$dir"
|
||||
|
||||
@ -1,52 +1,52 @@
|
||||
{
|
||||
"31": {
|
||||
"branch": "31",
|
||||
"version": "31.0.7",
|
||||
"url": "https://download.nextcloud.com/server/releases/nextcloud-31.0.7.tar.bz2",
|
||||
"ascUrl": "https://download.nextcloud.com/server/releases/nextcloud-31.0.7.tar.bz2.asc",
|
||||
"32": {
|
||||
"branch": "32",
|
||||
"version": "32.0.3",
|
||||
"url": "https://github.com/nextcloud-releases/server/releases/download/v32.0.3/nextcloud-32.0.3.tar.bz2",
|
||||
"ascUrl": "https://github.com/nextcloud-releases/server/releases/download/v32.0.3/nextcloud-32.0.3.tar.bz2.asc",
|
||||
"variants": {
|
||||
"apache": {
|
||||
"variant": "apache",
|
||||
"base": "debian",
|
||||
"baseVersion": "bookworm",
|
||||
"baseVersion": "trixie",
|
||||
"phpVersion": "8.3"
|
||||
},
|
||||
"fpm": {
|
||||
"variant": "fpm",
|
||||
"base": "debian",
|
||||
"baseVersion": "bookworm",
|
||||
"baseVersion": "trixie",
|
||||
"phpVersion": "8.3"
|
||||
},
|
||||
"fpm-alpine": {
|
||||
"variant": "fpm-alpine",
|
||||
"base": "alpine",
|
||||
"baseVersion": "3.22",
|
||||
"baseVersion": "3.23",
|
||||
"phpVersion": "8.3"
|
||||
}
|
||||
}
|
||||
},
|
||||
"30": {
|
||||
"branch": "30",
|
||||
"version": "30.0.13",
|
||||
"url": "https://download.nextcloud.com/server/releases/nextcloud-30.0.13.tar.bz2",
|
||||
"ascUrl": "https://download.nextcloud.com/server/releases/nextcloud-30.0.13.tar.bz2.asc",
|
||||
"31": {
|
||||
"branch": "31",
|
||||
"version": "31.0.12",
|
||||
"url": "https://github.com/nextcloud-releases/server/releases/download/v31.0.12/nextcloud-31.0.12.tar.bz2",
|
||||
"ascUrl": "https://github.com/nextcloud-releases/server/releases/download/v31.0.12/nextcloud-31.0.12.tar.bz2.asc",
|
||||
"variants": {
|
||||
"apache": {
|
||||
"variant": "apache",
|
||||
"base": "debian",
|
||||
"baseVersion": "bookworm",
|
||||
"baseVersion": "trixie",
|
||||
"phpVersion": "8.3"
|
||||
},
|
||||
"fpm": {
|
||||
"variant": "fpm",
|
||||
"base": "debian",
|
||||
"baseVersion": "bookworm",
|
||||
"baseVersion": "trixie",
|
||||
"phpVersion": "8.3"
|
||||
},
|
||||
"fpm-alpine": {
|
||||
"variant": "fpm-alpine",
|
||||
"base": "alpine",
|
||||
"baseVersion": "3.22",
|
||||
"baseVersion": "3.23",
|
||||
"phpVersion": "8.3"
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user