mirror of
https://github.com/nextcloud/docker.git
synced 2024-12-25 02:26:13 +01:00
Adds ability to configure S3 object stores via environment variables
closes #1193 #1124 #1134 Co-authored-by: Adam Jenkins <adamjenkins1701@gmail.com> Co-authored-by: Stephen Cuppett <scuppett@redhat.com>
This commit is contained in:
parent
1eb77283c1
commit
47032fddb6
2 changed files with 34 additions and 0 deletions
22
.config/s3.config.php
Normal file
22
.config/s3.config.php
Normal file
|
@ -0,0 +1,22 @@
|
||||||
|
|
||||||
|
<?php
|
||||||
|
if (getenv('OBJECTSTORE_S3_BUCKET')) {
|
||||||
|
$use_ssl = getenv('OBJECTSTORE_S3_SSL');
|
||||||
|
$use_path = getenv('OBJECTSTORE_S3_USEPATH_STYLE');
|
||||||
|
$CONFIG = array(
|
||||||
|
'objectstore' => array(
|
||||||
|
'class' => '\OC\Files\ObjectStore\S3',
|
||||||
|
'arguments' => array(
|
||||||
|
'bucket' => getenv('OBJECTSTORE_S3_BUCKET'),
|
||||||
|
'key' => getenv('OBJECTSTORE_S3_KEY') ?: '',
|
||||||
|
'secret' => getenv('OBJECTSTORE_S3_SECRET') ?: '',
|
||||||
|
'region' => getenv('OBJECTSTORE_S3_REGION') ?: '',
|
||||||
|
'hostname' => getenv('OBJECTSTORE_S3_HOST') ?: '',
|
||||||
|
'port' => getenv('OBJECTSTORE_S3_PORT') ?: '',
|
||||||
|
'use_ssl' => (strtolower($use_ssl) === 'false' || $use_ssl == false) ? false : true,
|
||||||
|
// required for some non Amazon S3 implementations
|
||||||
|
'use_path_style' => $use_path == true && strtolower($use_path) !== 'false'
|
||||||
|
)
|
||||||
|
)
|
||||||
|
);
|
||||||
|
}
|
12
README.md
12
README.md
|
@ -158,6 +158,18 @@ To use an external SMTP server, you have to provide the connection details. To c
|
||||||
|
|
||||||
Check the [Nextcloud documentation](https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/email_configuration.html) for other values to configure SMTP.
|
Check the [Nextcloud documentation](https://docs.nextcloud.com/server/latest/admin_manual/configuration_server/email_configuration.html) for other values to configure SMTP.
|
||||||
|
|
||||||
|
To use an external S3 compatible object store as primary storage, set the following variables:
|
||||||
|
- `OBJECTSTORE_S3_HOST`: The hostname of the object storage server
|
||||||
|
- `OBJECTSTORE_S3_BUCKET`: The name of the bucket that Nextcloud should store the data in
|
||||||
|
- `OBJECTSTORE_S3_KEY`: AWS style access key
|
||||||
|
- `OBJECTSTORE_S3_SECRET`: AWS style secret access key
|
||||||
|
- `OBJECTSTORE_S3_PORT`: The port that the object storage server is being served over
|
||||||
|
- `OBJECTSTORE_S3_SSL` (default: `true`): Whether or not SSL/TLS should be used to communicate with object storage server
|
||||||
|
- `OBJECTSTORE_S3_REGION`: The region that the S3 bucket resides in.
|
||||||
|
- `OBJECTSTORE_S3_USEPATH_STYLE` (default: `false`): Not required for AWS S3
|
||||||
|
|
||||||
|
Check the [Nextcloud documentation](https://docs.nextcloud.com/server/latest/admin_manual/configuration_files/primary_storage.html#simple-storage-service-s3) for more information.
|
||||||
|
|
||||||
|
|
||||||
## Using the apache image behind a reverse proxy and auto configure server host and protocol
|
## Using the apache image behind a reverse proxy and auto configure server host and protocol
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue