mirror of
https://github.com/nextcloud/docker.git
synced 2025-07-26 08:48:05 +02:00
Compare commits
8 commits
898ddfb208
...
7443993a4a
Author | SHA1 | Date | |
---|---|---|---|
|
7443993a4a | ||
|
dd663d60c6 | ||
|
b9ed2426a0 | ||
|
4f130dc752 | ||
|
54bd7d5d30 | ||
|
5366de2a84 | ||
|
c45a9f4194 | ||
|
546dbcc20f |
13 changed files with 106 additions and 39 deletions
|
@ -140,7 +140,7 @@ RUN { \
|
|||
} > /etc/apache2/conf-available/apache-limits.conf; \
|
||||
a2enconf apache-limits
|
||||
|
||||
ENV NEXTCLOUD_VERSION 28.0.11
|
||||
ENV NEXTCLOUD_VERSION 28.0.12
|
||||
|
||||
RUN set -ex; \
|
||||
fetchDeps=" \
|
||||
|
@ -150,8 +150,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-28.0.11.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-28.0.11.tar.bz2.asc"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-28.0.12.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-28.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; \
|
||||
|
|
|
@ -120,7 +120,7 @@ RUN { \
|
|||
VOLUME /var/www/html
|
||||
|
||||
|
||||
ENV NEXTCLOUD_VERSION 28.0.11
|
||||
ENV NEXTCLOUD_VERSION 28.0.12
|
||||
|
||||
RUN set -ex; \
|
||||
apk add --no-cache --virtual .fetch-deps \
|
||||
|
@ -128,8 +128,8 @@ RUN set -ex; \
|
|||
gnupg \
|
||||
; \
|
||||
\
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-28.0.11.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-28.0.11.tar.bz2.asc"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-28.0.12.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-28.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; \
|
||||
|
|
|
@ -125,7 +125,7 @@ RUN { \
|
|||
VOLUME /var/www/html
|
||||
|
||||
|
||||
ENV NEXTCLOUD_VERSION 28.0.11
|
||||
ENV NEXTCLOUD_VERSION 28.0.12
|
||||
|
||||
RUN set -ex; \
|
||||
fetchDeps=" \
|
||||
|
@ -135,8 +135,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-28.0.11.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-28.0.11.tar.bz2.asc"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-28.0.12.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-28.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; \
|
||||
|
|
|
@ -140,7 +140,7 @@ RUN { \
|
|||
} > /etc/apache2/conf-available/apache-limits.conf; \
|
||||
a2enconf apache-limits
|
||||
|
||||
ENV NEXTCLOUD_VERSION 29.0.8
|
||||
ENV NEXTCLOUD_VERSION 29.0.9
|
||||
|
||||
RUN set -ex; \
|
||||
fetchDeps=" \
|
||||
|
@ -150,8 +150,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.8.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-29.0.8.tar.bz2.asc"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-29.0.9.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-29.0.9.tar.bz2.asc"; \
|
||||
export GNUPGHOME="$(mktemp -d)"; \
|
||||
# gpg key from https://nextcloud.com/nextcloud.asc
|
||||
gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \
|
||||
|
|
|
@ -120,7 +120,7 @@ RUN { \
|
|||
VOLUME /var/www/html
|
||||
|
||||
|
||||
ENV NEXTCLOUD_VERSION 29.0.8
|
||||
ENV NEXTCLOUD_VERSION 29.0.9
|
||||
|
||||
RUN set -ex; \
|
||||
apk add --no-cache --virtual .fetch-deps \
|
||||
|
@ -128,8 +128,8 @@ RUN set -ex; \
|
|||
gnupg \
|
||||
; \
|
||||
\
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-29.0.8.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-29.0.8.tar.bz2.asc"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-29.0.9.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-29.0.9.tar.bz2.asc"; \
|
||||
export GNUPGHOME="$(mktemp -d)"; \
|
||||
# gpg key from https://nextcloud.com/nextcloud.asc
|
||||
gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \
|
||||
|
|
|
@ -125,7 +125,7 @@ RUN { \
|
|||
VOLUME /var/www/html
|
||||
|
||||
|
||||
ENV NEXTCLOUD_VERSION 29.0.8
|
||||
ENV NEXTCLOUD_VERSION 29.0.9
|
||||
|
||||
RUN set -ex; \
|
||||
fetchDeps=" \
|
||||
|
@ -135,8 +135,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.8.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-29.0.8.tar.bz2.asc"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-29.0.9.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-29.0.9.tar.bz2.asc"; \
|
||||
export GNUPGHOME="$(mktemp -d)"; \
|
||||
# gpg key from https://nextcloud.com/nextcloud.asc
|
||||
gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 28806A878AE423A28372792ED75899B9A724937A; \
|
||||
|
|
|
@ -140,7 +140,7 @@ RUN { \
|
|||
} > /etc/apache2/conf-available/apache-limits.conf; \
|
||||
a2enconf apache-limits
|
||||
|
||||
ENV NEXTCLOUD_VERSION 30.0.1
|
||||
ENV NEXTCLOUD_VERSION 30.0.2
|
||||
|
||||
RUN set -ex; \
|
||||
fetchDeps=" \
|
||||
|
@ -150,8 +150,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.1.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-30.0.1.tar.bz2.asc"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-30.0.2.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-30.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; \
|
||||
|
|
|
@ -120,7 +120,7 @@ RUN { \
|
|||
VOLUME /var/www/html
|
||||
|
||||
|
||||
ENV NEXTCLOUD_VERSION 30.0.1
|
||||
ENV NEXTCLOUD_VERSION 30.0.2
|
||||
|
||||
RUN set -ex; \
|
||||
apk add --no-cache --virtual .fetch-deps \
|
||||
|
@ -128,8 +128,8 @@ RUN set -ex; \
|
|||
gnupg \
|
||||
; \
|
||||
\
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-30.0.1.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-30.0.1.tar.bz2.asc"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-30.0.2.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-30.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; \
|
||||
|
|
|
@ -125,7 +125,7 @@ RUN { \
|
|||
VOLUME /var/www/html
|
||||
|
||||
|
||||
ENV NEXTCLOUD_VERSION 30.0.1
|
||||
ENV NEXTCLOUD_VERSION 30.0.2
|
||||
|
||||
RUN set -ex; \
|
||||
fetchDeps=" \
|
||||
|
@ -135,8 +135,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.1.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-30.0.1.tar.bz2.asc"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2 "https://download.nextcloud.com/server/releases/nextcloud-30.0.2.tar.bz2"; \
|
||||
curl -fsSL -o nextcloud.tar.bz2.asc "https://download.nextcloud.com/server/releases/nextcloud-30.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; \
|
||||
|
|
69
README.md
69
README.md
|
@ -132,7 +132,70 @@ $ docker compose exec -u33 app ./occ config:list system
|
|||
The `--private` flag can also be specified, in order to output all configuration values including passwords and secrets.
|
||||
|
||||
## Auto configuration via environment variables
|
||||
The Nextcloud image supports auto configuration via environment variables. You can preconfigure everything that is asked on the install page on first run. To enable auto configuration, set your database connection via the following environment variables. You must specify all of the environment variables for a given database or the database environment variables defaults to SQLITE. ONLY use one database type!
|
||||
|
||||
The Nextcloud image supports auto configuration of the initial installation via environment variables. You can preconfigure everything that is usually asked on the install page on first run.
|
||||
|
||||
In addition, support for adjusting several other key aspects of Nextcloud and the container's runtime environment are supported by the image.
|
||||
|
||||
Keep in mind the intention is to auto configure initial installation. Only a few variables may be used after initial deployment (i.e. changing them in your Compose file may not flow through to an existing installation).
|
||||
|
||||
All variables below, at a minimum, work at installation time. Some may be used after installation time and thus may override `config.php` and similar parameters. Specifics are noted in the tables below. Details about each variable follow the table.
|
||||
|
||||
* Usage
|
||||
- Install
|
||||
- Post-install
|
||||
* Dependencies
|
||||
* Visibility
|
||||
- `config.php`
|
||||
- `occ config:list`
|
||||
* Priority
|
||||
- Overrides `config.php`
|
||||
* Secret?
|
||||
* Compatibility
|
||||
- Rootless
|
||||
* Injection method(s)
|
||||
- `entrypoint.sh` to Server installer
|
||||
- `autoconfig.php` to Server installer
|
||||
|
||||
|
||||
| Environment Variable | Description | Example | Default | Secret[4] | Post-install[5] | Visibility | Notes | Method |
|
||||
| :------------------: | :---------: | :-----: | :------ | :-------: | :-------------: | :--------: | ----- | ------ |
|
||||
| SQLITE_DATABASE | Use SQLite as the database and use as the `dbname` | `ncdb` | Yes | No | No | `config.php` | Suitable to testing and minimal-instances only | Injected via `entrypoint.sh` to `occ maintenance:install` (when specified with `NEXTCLOUD_ADMIN_*`) otherwise via `autoconfig.php` |
|
||||
| MYSQL_DATABASE | Use MySQL/MariaDB as the database and use as the `dbname` | `ncdb` | n/a | ✓ | No | `config.php` | Ignored unless all `MYSQL_*` variables are specified | Injected via `entrypoint.sh` to `occ maintenance:install` (when specified with `NEXTCLOUD_ADMIN_*`) otherwise via `autoconfig.php` |
|
||||
| MYSQL_USER | the `dbuser` | `ncdbuser` | n/a | ✓ | No | `config.php` | See `MYSQL_DATABASE` | |
|
||||
| MYSQL_PASSWORD | the `dbpass` | `ncdbpass` | n/a | ✓ | No | `config.php` | See `MYSQL_DATABASE` | |
|
||||
| MYSQL_HOST | the `dbhost` | `db` or `localhost:/usr/local/run/mysql.sock` | n/a | ✓ | No | `config.php` | See `MYSQL_DATABASE` | |
|
||||
| POSTGRES_DB | Use PostgreSQL as the database and use as the `dbname` | `ncdb` | n/a | ✓ | No | `config.php` | Ignored unless all `POSTGRES_*` variables are specified | Injected via `entrypoint.sh` to `occ maintenance:install` (when specified with `NEXTCLOUD_ADMIN_*`) otherwise via `autoconfig.php` |
|
||||
| POSTGRES_USER | the `dbuser` | `ncdbuser` | n/a | ✓ | No | `config.php` | See `POSTGRES_DB` | |
|
||||
| POSTGRES_PASSWORD | the `dbpass` | `ncdbpass` | n/a | ✓ | No | `config.php` | See `POSTGRES_DB` | |
|
||||
| POSTGRES_HOST | the `dbhost` | `db` | n/a | ✓ | No | `config.php` | See `POSTGRES_DB` | |
|
||||
| NEXTCLOUD_ADMIN_USER | the initial Nextcloud admin user | `ncadmin` | n/a | ✓ | No | Nextcloud Super `admin` group | Ignored unless `NEXTCLOUD_ADMIN_PASSWORD` + preferred database variables are specified | Injected via `entrypoint.sh` to `occ maintenance:install` |
|
||||
| NEXTCLOUD_ADMIN_PASSWORD | the initial Nextcloud admin password | `ncadminpass` | n/a | ✓ | No | Nextcloud Super `admin` group | Ignored unless `NEXTCLOUD_ADMIN_USER` + preferred database variables are specified | Injected via `entrypoint.sh` to `occ maintenance:install` |
|
||||
| NEXTCLOUD_DATA_DIR | data directory where nextcloud stores all files from the users | `/var/www/html/data` | `/var/www/html/data` | No | No | `config.php` | | Injected via `entrypoint.sh` to `occ maintenance:install` (when specified with `NEXTCLOUD_ADMIN_*` + db parameters; otherwise via `autoconfig.php` |
|
||||
| NEXTCLOUD_TRUSTED_DOMAINS
|
||||
| TRUSTED_PROXIES
|
||||
| NEXTCLOUD_UPDATE
|
||||
| NEXTCLOUD_INIT_HTACCESS
|
||||
| REDIS_*
|
||||
| SMTP_*
|
||||
| MAIL_*
|
||||
| OBJECTSTORE_*
|
||||
| PHP_MEMORY_LIMIT
|
||||
| PHP_UPLOAD_LIMIT
|
||||
| APACHE_BODY_LIMIT
|
||||
| APACHE_DISABLE_REWRITE_IP
|
||||
| OVERWRITE*
|
||||
|
||||
|
||||
[4] Can be specified as a Docker secret or pulled from a file available from within the container. See [#docker-secrets](Docker Secrets).
|
||||
|
||||
[5] No = Installation only (i.e. cannot be modified post-installation via variable).
|
||||
|
||||
|
||||
|
||||
---
|
||||
|
||||
Set your database connection via auto configuration using the following environment variables. You must specify all of the environment variables for a given database or the database environment variables defaults to SQLITE. ONLY use one database type!
|
||||
|
||||
__SQLite__:
|
||||
- `SQLITE_DATABASE` Name of the database using sqlite
|
||||
|
@ -242,6 +305,10 @@ During a fresh Nextcloud installation, the latest version (from the image) of th
|
|||
The copied files, however, are **not** automatically overwritten whenever you update your environment with a newer Nextcloud image. This is to prevent local changes in `/var/www/html/config` from being unexpectedly overwritten. This may lead to your image-specific configuration files becoming outdated and image functionality not matching that which is documented.
|
||||
|
||||
A warning will be generated in the container log output when outdated image-specific configuration files are detected at startup in a running container. When you see this warning, you should manually compare (or copy) the files from `/usr/src/nextcloud/config` to `/var/www/html/config`.
|
||||
A command to copy these configs would e.g. be:
|
||||
```console
|
||||
docker exec <container-name> sh -c "cp /usr/src/nextcloud/config/*.php /var/www/html/config"
|
||||
```
|
||||
|
||||
As long as you have not modified any of the provided config files in `/var/www/html/config` (other than `config.php`) or only added new ones with names that do not conflict with the image specific ones, copying the new ones into place should be safe (but check the source path `/usr/src/nextcloud/config` for any newly named config files to avoid new overlaps just in case).
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
#!/usr/bin/env bash
|
||||
set -Eeuo pipefail
|
||||
|
||||
stable_channel='30.0.1'
|
||||
stable_channel='30.0.2'
|
||||
|
||||
self="$(basename "$BASH_SOURCE")"
|
||||
cd "$(dirname "$(readlink -f "$BASH_SOURCE")")"
|
||||
|
|
|
@ -1 +1 @@
|
|||
30.0.1
|
||||
30.0.2
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
{
|
||||
"30": {
|
||||
"branch": "30",
|
||||
"version": "30.0.1",
|
||||
"url": "https://download.nextcloud.com/server/releases/nextcloud-30.0.1.tar.bz2",
|
||||
"ascUrl": "https://download.nextcloud.com/server/releases/nextcloud-30.0.1.tar.bz2.asc",
|
||||
"version": "30.0.2",
|
||||
"url": "https://download.nextcloud.com/server/releases/nextcloud-30.0.2.tar.bz2",
|
||||
"ascUrl": "https://download.nextcloud.com/server/releases/nextcloud-30.0.2.tar.bz2.asc",
|
||||
"variants": {
|
||||
"apache": {
|
||||
"variant": "apache",
|
||||
|
@ -27,9 +27,9 @@
|
|||
},
|
||||
"29": {
|
||||
"branch": "29",
|
||||
"version": "29.0.8",
|
||||
"url": "https://download.nextcloud.com/server/releases/nextcloud-29.0.8.tar.bz2",
|
||||
"ascUrl": "https://download.nextcloud.com/server/releases/nextcloud-29.0.8.tar.bz2.asc",
|
||||
"version": "29.0.9",
|
||||
"url": "https://download.nextcloud.com/server/releases/nextcloud-29.0.9.tar.bz2",
|
||||
"ascUrl": "https://download.nextcloud.com/server/releases/nextcloud-29.0.9.tar.bz2.asc",
|
||||
"variants": {
|
||||
"apache": {
|
||||
"variant": "apache",
|
||||
|
@ -53,9 +53,9 @@
|
|||
},
|
||||
"28": {
|
||||
"branch": "28",
|
||||
"version": "28.0.11",
|
||||
"url": "https://download.nextcloud.com/server/releases/nextcloud-28.0.11.tar.bz2",
|
||||
"ascUrl": "https://download.nextcloud.com/server/releases/nextcloud-28.0.11.tar.bz2.asc",
|
||||
"version": "28.0.12",
|
||||
"url": "https://download.nextcloud.com/server/releases/nextcloud-28.0.12.tar.bz2",
|
||||
"ascUrl": "https://download.nextcloud.com/server/releases/nextcloud-28.0.12.tar.bz2.asc",
|
||||
"variants": {
|
||||
"apache": {
|
||||
"variant": "apache",
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue