diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml index 5a3fc37e..bbc4a691 100644 --- a/.github/ISSUE_TEMPLATE/config.yml +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -1,10 +1,22 @@ contact_links: - - name: 🐛 Nextcloud issue - url: https://github.com/nextcloud/server/issues/new/choose - about: Bug reports and feature requests for Nextcloud - - name: 🐳 Docker Support and Help - url: https://forums.docker.com/ - about: Configuration, installation, networking and other questions - - name: ❓ Nextcloud Support and Help + - name: ❓ Ask a question url: https://help.nextcloud.com/ - about: Configuration, webserver/proxy or performance issues and other questions + about: Ask a question, get assistance or start a discussion regarding Nextcloud and/or this image + - name: Documentation - Nextcloud Server + url: https://docs.nextcloud.com/ + about: Official documentation for Nextcloud Server + - name: Documentation - Nextcloud Docker Image + url: https://github.com/nextcloud/docker/blob/master/README.md + about: Official documentation for this image + - name: 🐳 Documentation - Docker + url: https://docs.docker.com/ + about: Official documentation for Docker (installing, configuring, troubleshooting) + - name: 🐳 Docker Forum + url: https://forums.docker.com/ + about: Ask a question, get assistance or start a discussion regarding Docker + - name: 🐛 Bug Report - Nextcloud Server + url: https://github.com/nextcloud/server/issues/new/choose + about: Report a bug in Nextcloud Server + - name: Enhancement Idea - Nextcloud Server + url: https://github.com/nextcloud/server/issues/new/choose + about: Suggest an enhancement idea for Nextcloud Server diff --git a/29/apache/Dockerfile b/29/apache/Dockerfile index 3ca9ab54..6705b196 100644 --- a/29/apache/Dockerfile +++ b/29/apache/Dockerfile @@ -87,7 +87,7 @@ RUN set -ex; \ pecl install igbinary-3.2.16; \ pecl install memcached-3.3.0 \ --configureoptions 'enable-memcached-igbinary="yes"'; \ - pecl install redis-6.1.0 \ + pecl install redis-6.2.0 \ --configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \ \ docker-php-ext-enable \ @@ -166,7 +166,7 @@ RUN { \ } > /etc/apache2/conf-available/apache-limits.conf; \ a2enconf apache-limits -ENV NEXTCLOUD_VERSION 29.0.12 +ENV NEXTCLOUD_VERSION 29.0.14 RUN set -ex; \ fetchDeps=" \ @@ -176,8 +176,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-29.0.12.tar.bz2"; \ - curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-29.0.12.tar.bz2.asc"; \ + curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-29.0.14.tar.bz2"; \ + curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-29.0.14.tar.bz2.asc"; \ export GNUPGHOME="$(mktemp -d)"; \ # gpg key from https://nextcloud.com/nextcloud.asc gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \ diff --git a/29/fpm-alpine/Dockerfile b/29/fpm-alpine/Dockerfile index 47179e44..d0058db8 100644 --- a/29/fpm-alpine/Dockerfile +++ b/29/fpm-alpine/Dockerfile @@ -84,7 +84,7 @@ RUN set -ex; \ pecl install igbinary-3.2.16; \ pecl install memcached-3.3.0 \ --configureoptions 'enable-memcached-igbinary="yes"'; \ - pecl install redis-6.1.0 \ + pecl install redis-6.2.0 \ --configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \ \ docker-php-ext-enable \ @@ -146,7 +146,7 @@ RUN { \ VOLUME /var/www/html -ENV NEXTCLOUD_VERSION 29.0.12 +ENV NEXTCLOUD_VERSION 29.0.14 RUN set -ex; \ apk add --no-cache --virtual .fetch-deps \ @@ -154,8 +154,8 @@ RUN set -ex; \ gnupg \ ; \ \ - curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-29.0.12.tar.bz2"; \ - curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-29.0.12.tar.bz2.asc"; \ + curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-29.0.14.tar.bz2"; \ + curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-29.0.14.tar.bz2.asc"; \ export GNUPGHOME="$(mktemp -d)"; \ # gpg key from https://nextcloud.com/nextcloud.asc gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \ diff --git a/29/fpm/Dockerfile b/29/fpm/Dockerfile index 3a984575..2833cad0 100644 --- a/29/fpm/Dockerfile +++ b/29/fpm/Dockerfile @@ -87,7 +87,7 @@ RUN set -ex; \ pecl install igbinary-3.2.16; \ pecl install memcached-3.3.0 \ --configureoptions 'enable-memcached-igbinary="yes"'; \ - pecl install redis-6.1.0 \ + pecl install redis-6.2.0 \ --configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \ \ docker-php-ext-enable \ @@ -151,7 +151,7 @@ RUN { \ VOLUME /var/www/html -ENV NEXTCLOUD_VERSION 29.0.12 +ENV NEXTCLOUD_VERSION 29.0.14 RUN set -ex; \ fetchDeps=" \ @@ -161,8 +161,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-29.0.12.tar.bz2"; \ - curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-29.0.12.tar.bz2.asc"; \ + curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-29.0.14.tar.bz2"; \ + curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-29.0.14.tar.bz2.asc"; \ export GNUPGHOME="$(mktemp -d)"; \ # gpg key from https://nextcloud.com/nextcloud.asc gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \ diff --git a/30/apache/Dockerfile b/30/apache/Dockerfile index 472e005d..6034a23d 100644 --- a/30/apache/Dockerfile +++ b/30/apache/Dockerfile @@ -87,7 +87,7 @@ RUN set -ex; \ pecl install igbinary-3.2.16; \ pecl install memcached-3.3.0 \ --configureoptions 'enable-memcached-igbinary="yes"'; \ - pecl install redis-6.1.0 \ + pecl install redis-6.2.0 \ --configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \ \ docker-php-ext-enable \ @@ -166,7 +166,7 @@ RUN { \ } > /etc/apache2/conf-available/apache-limits.conf; \ a2enconf apache-limits -ENV NEXTCLOUD_VERSION 30.0.6 +ENV NEXTCLOUD_VERSION 30.0.8 RUN set -ex; \ fetchDeps=" \ @@ -176,8 +176,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.6.tar.bz2"; \ - curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-30.0.6.tar.bz2.asc"; \ + curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-30.0.8.tar.bz2"; \ + curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-30.0.8.tar.bz2.asc"; \ export GNUPGHOME="$(mktemp -d)"; \ # gpg key from https://nextcloud.com/nextcloud.asc gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \ diff --git a/30/fpm-alpine/Dockerfile b/30/fpm-alpine/Dockerfile index b060e713..0a88a77e 100644 --- a/30/fpm-alpine/Dockerfile +++ b/30/fpm-alpine/Dockerfile @@ -84,7 +84,7 @@ RUN set -ex; \ pecl install igbinary-3.2.16; \ pecl install memcached-3.3.0 \ --configureoptions 'enable-memcached-igbinary="yes"'; \ - pecl install redis-6.1.0 \ + pecl install redis-6.2.0 \ --configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \ \ docker-php-ext-enable \ @@ -146,7 +146,7 @@ RUN { \ VOLUME /var/www/html -ENV NEXTCLOUD_VERSION 30.0.6 +ENV NEXTCLOUD_VERSION 30.0.8 RUN set -ex; \ apk add --no-cache --virtual .fetch-deps \ @@ -154,8 +154,8 @@ RUN set -ex; \ gnupg \ ; \ \ - curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-30.0.6.tar.bz2"; \ - curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-30.0.6.tar.bz2.asc"; \ + curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-30.0.8.tar.bz2"; \ + curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-30.0.8.tar.bz2.asc"; \ export GNUPGHOME="$(mktemp -d)"; \ # gpg key from https://nextcloud.com/nextcloud.asc gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \ diff --git a/30/fpm/Dockerfile b/30/fpm/Dockerfile index 85d0f477..163df8c7 100644 --- a/30/fpm/Dockerfile +++ b/30/fpm/Dockerfile @@ -87,7 +87,7 @@ RUN set -ex; \ pecl install igbinary-3.2.16; \ pecl install memcached-3.3.0 \ --configureoptions 'enable-memcached-igbinary="yes"'; \ - pecl install redis-6.1.0 \ + pecl install redis-6.2.0 \ --configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \ \ docker-php-ext-enable \ @@ -151,7 +151,7 @@ RUN { \ VOLUME /var/www/html -ENV NEXTCLOUD_VERSION 30.0.6 +ENV NEXTCLOUD_VERSION 30.0.8 RUN set -ex; \ fetchDeps=" \ @@ -161,8 +161,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.6.tar.bz2"; \ - curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-30.0.6.tar.bz2.asc"; \ + curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-30.0.8.tar.bz2"; \ + curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-30.0.8.tar.bz2.asc"; \ export GNUPGHOME="$(mktemp -d)"; \ # gpg key from https://nextcloud.com/nextcloud.asc gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \ diff --git a/31/apache/Dockerfile b/31/apache/Dockerfile index 96b8511c..bb799ffe 100644 --- a/31/apache/Dockerfile +++ b/31/apache/Dockerfile @@ -87,7 +87,7 @@ RUN set -ex; \ pecl install igbinary-3.2.16; \ pecl install memcached-3.3.0 \ --configureoptions 'enable-memcached-igbinary="yes"'; \ - pecl install redis-6.1.0 \ + pecl install redis-6.2.0 \ --configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \ \ docker-php-ext-enable \ @@ -166,7 +166,7 @@ RUN { \ } > /etc/apache2/conf-available/apache-limits.conf; \ a2enconf apache-limits -ENV NEXTCLOUD_VERSION 31.0.0 +ENV NEXTCLOUD_VERSION 31.0.2 RUN set -ex; \ fetchDeps=" \ @@ -176,8 +176,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.0.tar.bz2"; \ - curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-31.0.0.tar.bz2.asc"; \ + curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-31.0.2.tar.bz2"; \ + curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-31.0.2.tar.bz2.asc"; \ export GNUPGHOME="$(mktemp -d)"; \ # gpg key from https://nextcloud.com/nextcloud.asc gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \ diff --git a/31/fpm-alpine/Dockerfile b/31/fpm-alpine/Dockerfile index ca69007f..7b9a37a1 100644 --- a/31/fpm-alpine/Dockerfile +++ b/31/fpm-alpine/Dockerfile @@ -84,7 +84,7 @@ RUN set -ex; \ pecl install igbinary-3.2.16; \ pecl install memcached-3.3.0 \ --configureoptions 'enable-memcached-igbinary="yes"'; \ - pecl install redis-6.1.0 \ + pecl install redis-6.2.0 \ --configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \ \ docker-php-ext-enable \ @@ -146,7 +146,7 @@ RUN { \ VOLUME /var/www/html -ENV NEXTCLOUD_VERSION 31.0.0 +ENV NEXTCLOUD_VERSION 31.0.2 RUN set -ex; \ apk add --no-cache --virtual .fetch-deps \ @@ -154,8 +154,8 @@ RUN set -ex; \ gnupg \ ; \ \ - curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-31.0.0.tar.bz2"; \ - curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-31.0.0.tar.bz2.asc"; \ + curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-31.0.2.tar.bz2"; \ + curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-31.0.2.tar.bz2.asc"; \ export GNUPGHOME="$(mktemp -d)"; \ # gpg key from https://nextcloud.com/nextcloud.asc gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \ diff --git a/31/fpm/Dockerfile b/31/fpm/Dockerfile index 68c7b75f..4579215f 100644 --- a/31/fpm/Dockerfile +++ b/31/fpm/Dockerfile @@ -87,7 +87,7 @@ RUN set -ex; \ pecl install igbinary-3.2.16; \ pecl install memcached-3.3.0 \ --configureoptions 'enable-memcached-igbinary="yes"'; \ - pecl install redis-6.1.0 \ + pecl install redis-6.2.0 \ --configureoptions 'enable-redis-igbinary="yes" enable-redis-zstd="yes" enable-redis-lz4="yes"'; \ \ docker-php-ext-enable \ @@ -151,7 +151,7 @@ RUN { \ VOLUME /var/www/html -ENV NEXTCLOUD_VERSION 31.0.0 +ENV NEXTCLOUD_VERSION 31.0.2 RUN set -ex; \ fetchDeps=" \ @@ -161,8 +161,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.0.tar.bz2"; \ - curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-31.0.0.tar.bz2.asc"; \ + curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-31.0.2.tar.bz2"; \ + curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-31.0.2.tar.bz2.asc"; \ export GNUPGHOME="$(mktemp -d)"; \ # gpg key from https://nextcloud.com/nextcloud.asc gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \ diff --git a/README.md b/README.md index ac5b0e28..1855c1da 100644 --- a/README.md +++ b/README.md @@ -60,6 +60,12 @@ $ docker run -d nextcloud:fpm As the fastCGI-Process is not capable of serving static files (style sheets, images, ...), the webserver needs access to these files. This can be achieved with the `volumes-from` option. You can find more information in the [docker compose section](#running-this-image-with-docker-compose). +### Alpine image variant + +Alpine variants of the fpm image are available by appending `-alpine` to the tag - e.g. `nextcloud:stable-fpm-alpine`. + +**Beware that Alpine variants can have incompatibilities with some applications**. For example, Alpine images do not meet the [system requirements for OnlyOffice](https://github.com/nextcloud/documentserver_community#requirements) nor [Nextcloud Office (CODE/Collabora)](https://github.com/CollaboraOnline/richdocumentscode#system-requirements) due to Alpine's use of *musl libc*. + ## Using an external database By default, this container uses SQLite for data storage but the Nextcloud setup wizard (appears on first run) allows connecting to an existing MySQL/MariaDB or PostgreSQL database. You can also link a database container, e. g. `--link my-mysql:mysql`, and then use `mysql` as the database host on setup. More info is in [the docker compose section](https://github.com/nextcloud/docker/?tab=readme-ov-file#running-this-image-with-docker-compose). @@ -141,12 +147,23 @@ If mounting additional volumes under `/var/www/html`, you should consider: **Data inside the main folder (`/var/www/html`) will be overridden/removed during installation and upgrades, unless listed in [upgrade.exclude](https://github.com/nextcloud/docker/blob/master/upgrade.exclude).** The additional volumes officially supported are already in that list, but custom volumes will need to be added by you. We suggest mounting custom storage volumes outside of `/var/www/html` and if possible read-only so that making this adjustment is unnecessary. If you must do so, however, you may build a custom image with a modified `/upgrade.exclude` file that incorporates your custom volume(s). +## Running as an arbitrary user / file permissions / changing the default container user + +The default user within a container is root (uid = 0). By default, processes inside the container will expect to have root privileges. Network services will drop privileges and use `www-data` to serve requests. + +Depending on your volumes configuration, this can lead to permission issues. You can address this by running the container with a different default user. When changing the default user, the image will no longer assume it has root privileges and will run all processes under the specified uid. To accomplish this, use the `--user` / `user` option in your container environment. + +See: + +- https://docs.docker.com/engine/containers/run/#user +- https://github.com/docker-library/docs/tree/master/php#running-as-an-arbitrary-user +- https://docs.podman.io/en/stable/markdown/podman-run.1.html#user-u-user-group ## Accessing the Nextcloud command-line interface (`occ`) To use the [Nextcloud command-line interface](https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/occ_command.html) (aka. `occ` command): ```console -$ docker exec --user www-data CONTAINER_ID php occ +$ docker exec -it --user www-data CONTAINER_ID php occ ``` or for docker compose: ```console diff --git a/generate-stackbrew-library.sh b/generate-stackbrew-library.sh index 2ea11765..978d07fc 100755 --- a/generate-stackbrew-library.sh +++ b/generate-stackbrew-library.sh @@ -1,7 +1,7 @@ #!/usr/bin/env bash set -Eeuo pipefail -stable_channel='30.0.6' +stable_channel='30.0.8' self="$(basename "$BASH_SOURCE")" cd "$(dirname "$(readlink -f "$BASH_SOURCE")")" diff --git a/latest.txt b/latest.txt index 221a8da0..732676bd 100644 --- a/latest.txt +++ b/latest.txt @@ -1 +1 @@ -31.0.0 +31.0.2 diff --git a/versions.json b/versions.json index 1d54bae2..cf55b440 100644 --- a/versions.json +++ b/versions.json @@ -1,9 +1,9 @@ { "31": { "branch": "31", - "version": "31.0.0", - "url": "https://download.nextcloud.com/server/releases/nextcloud-31.0.0.tar.bz2", - "ascUrl": "https://download.nextcloud.com/server/releases/nextcloud-31.0.0.tar.bz2.asc", + "version": "31.0.2", + "url": "https://download.nextcloud.com/server/releases/nextcloud-31.0.2.tar.bz2", + "ascUrl": "https://download.nextcloud.com/server/releases/nextcloud-31.0.2.tar.bz2.asc", "variants": { "apache": { "variant": "apache", @@ -27,9 +27,9 @@ }, "30": { "branch": "30", - "version": "30.0.6", - "url": "https://download.nextcloud.com/server/releases/nextcloud-30.0.6.tar.bz2", - "ascUrl": "https://download.nextcloud.com/server/releases/nextcloud-30.0.6.tar.bz2.asc", + "version": "30.0.8", + "url": "https://download.nextcloud.com/server/releases/nextcloud-30.0.8.tar.bz2", + "ascUrl": "https://download.nextcloud.com/server/releases/nextcloud-30.0.8.tar.bz2.asc", "variants": { "apache": { "variant": "apache", @@ -53,9 +53,9 @@ }, "29": { "branch": "29", - "version": "29.0.12", - "url": "https://download.nextcloud.com/server/releases/nextcloud-29.0.12.tar.bz2", - "ascUrl": "https://download.nextcloud.com/server/releases/nextcloud-29.0.12.tar.bz2.asc", + "version": "29.0.14", + "url": "https://download.nextcloud.com/server/releases/nextcloud-29.0.14.tar.bz2", + "ascUrl": "https://download.nextcloud.com/server/releases/nextcloud-29.0.14.tar.bz2.asc", "variants": { "apache": { "variant": "apache",