0
0
Fork 0
mirror of https://github.com/nextcloud/docker.git synced 2025-07-27 09:08:04 +02:00

Compare commits

...

19 commits

Author SHA1 Message Date
Josh
898ddfb208
Merge 54bd7d5d30 into 29d959acfd 2024-10-29 18:09:14 +01:00
GitHub Workflow
29d959acfd Runs update.sh 2024-10-24 19:52:51 +00:00
Valentin Brandl
d3341b61c1
Fix initialization of autocreate and use_ssl (#2309)
According to the documentation, both `OBJECTSTORE_S3_SSL` and
`OBJECTSTORE_S3_AUTOCREATE` should default to `true`.
Currently, when these environment variables are not set, they default to
`false`. (See https://github.com/nextcloud/docker/issues/2308).

This fix works, because `strtolower(false)` returns the empty string. So
when `OBJECTSTORE_S3_SSL` is not set and `getenv('OBJECTSTORE_S3_SSL')`
returns `false`, the check `strtolower($use_ssl) !== 'false'` will
evaluate to `true`.

With this fix, both values will be `true` if they are

* not set
* the empty string
* any string that is not equal to `false` when converted to lowercase

This should now match the documented behavior.

Signed-off-by: Valentin Brandl <mail@vbrandl.net>
2024-10-24 19:52:36 +00:00
Josh
aaa667ad0d
Merge pull request #2320 from nextcloud/jtr/fix-examples-matching-volumes
fix(examples): volumes must match to avoid 💥
2024-10-22 09:40:17 -04:00
Josh
cb8afbbe60
Merge pull request #2321 from nextcloud/jtr/feat-docs-readme-occ-config
feat(readme): Viewing merged config via `occ config:list system`
2024-10-22 09:28:54 -04:00
Josh
090934d9b0
feat(readme): Viewing merged config via occ config:list system
Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-10-22 09:15:05 -04:00
Josh
9b245ac4a1
fix(examples): volumes must match (with-nginx-proxy-postgres-fpm)
Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-10-21 17:53:55 -04:00
Josh
24b6769682
fix(examples): volumes must match (with-nginx-proxy-postgres-apache)
Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-10-21 17:52:21 -04:00
Josh
7e188da4fa
fix(examples): volumes must match (with-nginx-proxy-mariadb-fpm)
Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-10-21 17:51:06 -04:00
Josh
60f205abea
fix(examples): volumes must match (with-nginx-proxy-mariadb-apache)
Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-10-21 17:49:39 -04:00
Josh
e3dc1f3d62
fix(examples): volumes must match (insecure-postgres-fpm)
Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-10-21 17:47:11 -04:00
Josh
9395077d11
fix(examples): volumes must match (insecure-postgres-apache)
Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-10-21 17:45:19 -04:00
Josh
abf51f1cd7
fix(examples): volumes must match (insecure-mariadb-fpm)
Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-10-21 17:43:54 -04:00
Josh
9b63f3e4dc
fix(examples): volumes must match (insecure-mariadb-apache)
Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-10-21 17:38:50 -04:00
J0WI
abd813f5fb
Bump stable to 30.0.1
Signed-off-by: J0WI <J0WI@users.noreply.github.com>
2024-10-21 16:44:25 +00:00
Josh
54bd7d5d30
Update README.md
Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-06-01 11:06:54 -04:00
Josh
5366de2a84
Update README.md
Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-05-29 18:03:44 -04:00
Josh
c45a9f4194
Update README.md
Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-05-26 16:57:04 -04:00
Josh
546dbcc20f
Update README.md
Fixes #2224 

Signed-off-by: Josh <josh.t.richards@gmail.com>
2024-05-26 12:34:35 -04:00
20 changed files with 125 additions and 24 deletions

View file

@ -14,8 +14,8 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
'port' => getenv('OBJECTSTORE_S3_PORT') ?: '',
'storageClass' => getenv('OBJECTSTORE_S3_STORAGE_CLASS') ?: '',
'objectPrefix' => getenv("OBJECTSTORE_S3_OBJECT_PREFIX") ? getenv("OBJECTSTORE_S3_OBJECT_PREFIX") : "urn:oid:",
'autocreate' => (strtolower($autocreate) === 'false' || $autocreate == false) ? false : true,
'use_ssl' => (strtolower($use_ssl) === 'false' || $use_ssl == false) ? false : true,
'autocreate' => strtolower($autocreate) !== 'false',
'use_ssl' => strtolower($use_ssl) !== 'false',
// required for some non Amazon S3 implementations
'use_path_style' => $use_path == true && strtolower($use_path) !== 'false',
// required for older protocol versions

View file

@ -23,6 +23,7 @@ services:
- 127.0.0.1:8080:80
volumes:
- nextcloud:/var/www/html:z
# NOTE: The `volumes` config of the `cron` and `app` containers must match
environment:
- MYSQL_HOST=db
- REDIS_HOST=redis
@ -37,6 +38,7 @@ services:
restart: always
volumes:
- nextcloud:/var/www/html:z
# NOTE: The `volumes` config of the `cron` and `app` containers must match
entrypoint: /cron.sh
depends_on:
- db

View file

@ -21,6 +21,7 @@ services:
restart: always
volumes:
- nextcloud:/var/www/html:z
# NOTE: The `volumes` config of the `cron` and `app` containers must match
environment:
- MYSQL_HOST=db
- REDIS_HOST=redis
@ -37,6 +38,7 @@ services:
- 127.0.0.1:8080:80
volumes:
- nextcloud:/var/www/html:z,ro
# NOTE: The `volumes` included here should match those of the `app` container (unless you know what you're doing)
depends_on:
- app
@ -45,6 +47,7 @@ services:
restart: always
volumes:
- nextcloud:/var/www/html:z
# NOTE: The `volumes` config of the `cron` and `app` containers must match
entrypoint: /cron.sh
depends_on:
- db

View file

@ -18,6 +18,7 @@ services:
- 127.0.0.1:8080:80
volumes:
- nextcloud:/var/www/html:z
# NOTE: The `volumes` config of the `cron` and `app` containers must match
environment:
- POSTGRES_HOST=db
- REDIS_HOST=redis
@ -32,6 +33,7 @@ services:
restart: always
volumes:
- nextcloud:/var/www/html:z
# NOTE: The `volumes` config of the `cron` and `app` containers must match
entrypoint: /cron.sh
depends_on:
- db
@ -39,4 +41,4 @@ services:
volumes:
db:
nextcloud:
nextcloud:

View file

@ -16,6 +16,7 @@ services:
restart: always
volumes:
- nextcloud:/var/www/html:z
# NOTE: The `volumes` config of the `cron` and `app` containers must match
environment:
- POSTGRES_HOST=db
- REDIS_HOST=redis
@ -32,6 +33,7 @@ services:
- 127.0.0.1:8080:80
volumes:
- nextcloud:/var/www/html:z,ro
# NOTE: The `volumes` included here should match those of the `app` container (unless you know what you're doing)
depends_on:
- app
@ -40,6 +42,7 @@ services:
restart: always
volumes:
- nextcloud:/var/www/html:z
# NOTE: The `volumes` config of the `cron` and `app` containers must match
entrypoint: /cron.sh
depends_on:
- db

View file

@ -21,6 +21,7 @@ services:
restart: always
volumes:
- nextcloud:/var/www/html:z
# NOTE: The `volumes` config of the `cron` and `app` containers must match
environment:
- VIRTUAL_HOST=
- LETSENCRYPT_HOST=
@ -45,6 +46,7 @@ services:
restart: always
volumes:
- nextcloud:/var/www/html:z
# NOTE: The `volumes` config of the `cron` and `app` containers must match
entrypoint: /cron.sh
depends_on:
- db

View file

@ -21,6 +21,7 @@ services:
restart: always
volumes:
- nextcloud:/var/www/html:z
# NOTE: The `volumes` config of the `cron` and `app` containers must match
environment:
- MYSQL_HOST=db
- REDIS_HOST=redis
@ -36,6 +37,7 @@ services:
restart: always
volumes:
- nextcloud:/var/www/html:z,ro
# NOTE: The `volumes` included here should match those of the `app` container (unless you know what you're doing)
environment:
- VIRTUAL_HOST=
- LETSENCRYPT_HOST=
@ -51,6 +53,7 @@ services:
restart: always
volumes:
- nextcloud:/var/www/html:z
# NOTE: The `volumes` config of the `cron` and `app` containers must match
entrypoint: /cron.sh
depends_on:
- db

View file

@ -16,6 +16,7 @@ services:
restart: always
volumes:
- nextcloud:/var/www/html:z
# NOTE: The `volumes` config of the `cron` and `app` containers must match
environment:
- VIRTUAL_HOST=
- LETSENCRYPT_HOST=
@ -37,6 +38,7 @@ services:
restart: always
volumes:
- nextcloud:/var/www/html:z
# NOTE: The `volumes` config of the `cron` and `app` containers must match
entrypoint: /cron.sh
depends_on:
- db

View file

@ -18,6 +18,7 @@ services:
restart: always
volumes:
- nextcloud:/var/www/html:z
# NOTE: The `volumes` config of the `cron` and `app` containers must match
environment:
- POSTGRES_HOST=db
- REDIS_HOST=redis
@ -33,6 +34,7 @@ services:
restart: always
volumes:
- nextcloud:/var/www/html:z,ro
# NOTE: The `volumes` included here should match those of the `app` container (unless you know what you're doing)
environment:
- VIRTUAL_HOST=
- LETSENCRYPT_HOST=
@ -48,6 +50,7 @@ services:
restart: always
volumes:
- nextcloud:/var/www/html:z
# NOTE: The `volumes` config of the `cron` and `app` containers must match
entrypoint: /cron.sh
depends_on:
- db

View file

@ -14,8 +14,8 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
'port' => getenv('OBJECTSTORE_S3_PORT') ?: '',
'storageClass' => getenv('OBJECTSTORE_S3_STORAGE_CLASS') ?: '',
'objectPrefix' => getenv("OBJECTSTORE_S3_OBJECT_PREFIX") ? getenv("OBJECTSTORE_S3_OBJECT_PREFIX") : "urn:oid:",
'autocreate' => (strtolower($autocreate) === 'false' || $autocreate == false) ? false : true,
'use_ssl' => (strtolower($use_ssl) === 'false' || $use_ssl == false) ? false : true,
'autocreate' => strtolower($autocreate) !== 'false',
'use_ssl' => strtolower($use_ssl) !== 'false',
// required for some non Amazon S3 implementations
'use_path_style' => $use_path == true && strtolower($use_path) !== 'false',
// required for older protocol versions

View file

@ -14,8 +14,8 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
'port' => getenv('OBJECTSTORE_S3_PORT') ?: '',
'storageClass' => getenv('OBJECTSTORE_S3_STORAGE_CLASS') ?: '',
'objectPrefix' => getenv("OBJECTSTORE_S3_OBJECT_PREFIX") ? getenv("OBJECTSTORE_S3_OBJECT_PREFIX") : "urn:oid:",
'autocreate' => (strtolower($autocreate) === 'false' || $autocreate == false) ? false : true,
'use_ssl' => (strtolower($use_ssl) === 'false' || $use_ssl == false) ? false : true,
'autocreate' => strtolower($autocreate) !== 'false',
'use_ssl' => strtolower($use_ssl) !== 'false',
// required for some non Amazon S3 implementations
'use_path_style' => $use_path == true && strtolower($use_path) !== 'false',
// required for older protocol versions

View file

@ -14,8 +14,8 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
'port' => getenv('OBJECTSTORE_S3_PORT') ?: '',
'storageClass' => getenv('OBJECTSTORE_S3_STORAGE_CLASS') ?: '',
'objectPrefix' => getenv("OBJECTSTORE_S3_OBJECT_PREFIX") ? getenv("OBJECTSTORE_S3_OBJECT_PREFIX") : "urn:oid:",
'autocreate' => (strtolower($autocreate) === 'false' || $autocreate == false) ? false : true,
'use_ssl' => (strtolower($use_ssl) === 'false' || $use_ssl == false) ? false : true,
'autocreate' => strtolower($autocreate) !== 'false',
'use_ssl' => strtolower($use_ssl) !== 'false',
// required for some non Amazon S3 implementations
'use_path_style' => $use_path == true && strtolower($use_path) !== 'false',
// required for older protocol versions

View file

@ -14,8 +14,8 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
'port' => getenv('OBJECTSTORE_S3_PORT') ?: '',
'storageClass' => getenv('OBJECTSTORE_S3_STORAGE_CLASS') ?: '',
'objectPrefix' => getenv("OBJECTSTORE_S3_OBJECT_PREFIX") ? getenv("OBJECTSTORE_S3_OBJECT_PREFIX") : "urn:oid:",
'autocreate' => (strtolower($autocreate) === 'false' || $autocreate == false) ? false : true,
'use_ssl' => (strtolower($use_ssl) === 'false' || $use_ssl == false) ? false : true,
'autocreate' => strtolower($autocreate) !== 'false',
'use_ssl' => strtolower($use_ssl) !== 'false',
// required for some non Amazon S3 implementations
'use_path_style' => $use_path == true && strtolower($use_path) !== 'false',
// required for older protocol versions

View file

@ -14,8 +14,8 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
'port' => getenv('OBJECTSTORE_S3_PORT') ?: '',
'storageClass' => getenv('OBJECTSTORE_S3_STORAGE_CLASS') ?: '',
'objectPrefix' => getenv("OBJECTSTORE_S3_OBJECT_PREFIX") ? getenv("OBJECTSTORE_S3_OBJECT_PREFIX") : "urn:oid:",
'autocreate' => (strtolower($autocreate) === 'false' || $autocreate == false) ? false : true,
'use_ssl' => (strtolower($use_ssl) === 'false' || $use_ssl == false) ? false : true,
'autocreate' => strtolower($autocreate) !== 'false',
'use_ssl' => strtolower($use_ssl) !== 'false',
// required for some non Amazon S3 implementations
'use_path_style' => $use_path == true && strtolower($use_path) !== 'false',
// required for older protocol versions

View file

@ -14,8 +14,8 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
'port' => getenv('OBJECTSTORE_S3_PORT') ?: '',
'storageClass' => getenv('OBJECTSTORE_S3_STORAGE_CLASS') ?: '',
'objectPrefix' => getenv("OBJECTSTORE_S3_OBJECT_PREFIX") ? getenv("OBJECTSTORE_S3_OBJECT_PREFIX") : "urn:oid:",
'autocreate' => (strtolower($autocreate) === 'false' || $autocreate == false) ? false : true,
'use_ssl' => (strtolower($use_ssl) === 'false' || $use_ssl == false) ? false : true,
'autocreate' => strtolower($autocreate) !== 'false',
'use_ssl' => strtolower($use_ssl) !== 'false',
// required for some non Amazon S3 implementations
'use_path_style' => $use_path == true && strtolower($use_path) !== 'false',
// required for older protocol versions

View file

@ -14,8 +14,8 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
'port' => getenv('OBJECTSTORE_S3_PORT') ?: '',
'storageClass' => getenv('OBJECTSTORE_S3_STORAGE_CLASS') ?: '',
'objectPrefix' => getenv("OBJECTSTORE_S3_OBJECT_PREFIX") ? getenv("OBJECTSTORE_S3_OBJECT_PREFIX") : "urn:oid:",
'autocreate' => (strtolower($autocreate) === 'false' || $autocreate == false) ? false : true,
'use_ssl' => (strtolower($use_ssl) === 'false' || $use_ssl == false) ? false : true,
'autocreate' => strtolower($autocreate) !== 'false',
'use_ssl' => strtolower($use_ssl) !== 'false',
// required for some non Amazon S3 implementations
'use_path_style' => $use_path == true && strtolower($use_path) !== 'false',
// required for older protocol versions

View file

@ -14,8 +14,8 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
'port' => getenv('OBJECTSTORE_S3_PORT') ?: '',
'storageClass' => getenv('OBJECTSTORE_S3_STORAGE_CLASS') ?: '',
'objectPrefix' => getenv("OBJECTSTORE_S3_OBJECT_PREFIX") ? getenv("OBJECTSTORE_S3_OBJECT_PREFIX") : "urn:oid:",
'autocreate' => (strtolower($autocreate) === 'false' || $autocreate == false) ? false : true,
'use_ssl' => (strtolower($use_ssl) === 'false' || $use_ssl == false) ? false : true,
'autocreate' => strtolower($autocreate) !== 'false',
'use_ssl' => strtolower($use_ssl) !== 'false',
// required for some non Amazon S3 implementations
'use_path_style' => $use_path == true && strtolower($use_path) !== 'false',
// required for older protocol versions

View file

@ -14,8 +14,8 @@ if (getenv('OBJECTSTORE_S3_BUCKET')) {
'port' => getenv('OBJECTSTORE_S3_PORT') ?: '',
'storageClass' => getenv('OBJECTSTORE_S3_STORAGE_CLASS') ?: '',
'objectPrefix' => getenv("OBJECTSTORE_S3_OBJECT_PREFIX") ? getenv("OBJECTSTORE_S3_OBJECT_PREFIX") : "urn:oid:",
'autocreate' => (strtolower($autocreate) === 'false' || $autocreate == false) ? false : true,
'use_ssl' => (strtolower($use_ssl) === 'false' || $use_ssl == false) ? false : true,
'autocreate' => strtolower($autocreate) !== 'false',
'use_ssl' => strtolower($use_ssl) !== 'false',
// required for some non Amazon S3 implementations
'use_path_style' => $use_path == true && strtolower($use_path) !== 'false',
// required for older protocol versions

View file

@ -103,7 +103,8 @@ If mounting additional volumes under `/var/www/html`, you should consider:
You should note that 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).
## Using the Nextcloud command-line interface
## Using 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
@ -112,9 +113,89 @@ or for docker compose:
```console
$ docker compose exec --user www-data app php occ
```
or even shorter:
```console
$ docker compose exec -u33 app ./occ
```
Note: substitute `82` for `33` if using the Alpine-based images.
## Viewing the Nextcloud configuration (`config.php`)
The image takes advantage of Nextcloud's [Multiple config.php support](https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/config_sample_php_parameters.html#multiple-config-php-file) to inject auto configuration environment variables and set image specific config values.
This means that merely viewing your `config.php` will not give you an accurate view of your running config. Instead, you should use Nextcloud's [`occ config:list system` command](https://docs.nextcloud.com/server/latest/admin_manual/occ_command.html#config-commands-label) to get get a complete view of your merged configuration. This has the added benefit of automatically omitting sensitive values such as passwords and secrets from the output by default (e.g. useful for shared publicly or assisting others when troubleshooting or reporting a bug).
```console
$ 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

View file

@ -1,7 +1,7 @@
#!/usr/bin/env bash
set -Eeuo pipefail
stable_channel='29.0.7'
stable_channel='30.0.1'
self="$(basename "$BASH_SOURCE")"
cd "$(dirname "$(readlink -f "$BASH_SOURCE")")"