From cecf15c2496a620ec52807ca8b412e9dd2451706 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Gonzalo=20Pe=C3=B1a-Castellanos?= Date: Wed, 8 Jul 2026 15:12:18 -0500 Subject: [PATCH] docs(backups): clarify S3-compatible endpoint configuration --- docs/deploy/configuration/backups.md | 29 ++++++++++++++++++++++------ 1 file changed, 23 insertions(+), 6 deletions(-) diff --git a/docs/deploy/configuration/backups.md b/docs/deploy/configuration/backups.md index de8ac6b1..20789579 100644 --- a/docs/deploy/configuration/backups.md +++ b/docs/deploy/configuration/backups.md @@ -126,7 +126,7 @@ Note multiple providers can be enabled simultaneously. ### S3 (AWS or S3-compatible) -- Works with AWS S3 and S3-compatible services (e.g., MinIO) +- Works with Amazon S3 and any S3-compatible object store (for example, Backblaze B2, Cloudflare R2, or MinIO) - Supports multi-node deployments - Recommended for production use @@ -148,25 +148,42 @@ This configuration applies to any S3-compatible backend. | --- | --- | --- | | `BACKUP_S3_BUCKET` | yes | The name of the S3 bucket for all backups. | | `BACKUP_S3_PATH` | no | The root path inside your bucket that all your backups will be copied into and retrieved from.

Optional, defaults to `""` which means that the backups will be stored in the bucket root instead of a sub-folder. | -| `BACKUP_S3_ENDPOINT` | no | The S3 endpoint to be used.

Optional, defaults to `"s3.amazonaws.com"`. | +| `BACKUP_S3_ENDPOINT` | no | The S3 endpoint host to use, optionally including a port. Do not include an `http://` or `https://` scheme; TLS is controlled by `BACKUP_S3_USE_SSL`.

Optional, defaults to `"s3.amazonaws.com"`. | | `BACKUP_S3_USE_SSL` | no | Whether the connection should be secured with SSL/TLS.

Optional, defaults to `"true"`. | -#### S3 Configuration (AWS-specific) +#### S3 authentication -For AWS, provide Weaviate with authentication details. You can choose between access-key or ARN-based authentication: +For Amazon S3, provide Weaviate with authentication details. You can choose between AWS IAM/ARN-based authentication or access-key authentication. For S3-compatible object stores, use access-key authentication. -#### Option 1: With IAM and ARN roles +#### Option 1: With AWS IAM and ARN roles -The backup module will first try to authenticate itself using AWS IAM. If the authentication fails then it will try to authenticate with `Option 2`. +The backup module first tries to authenticate using AWS IAM. If IAM authentication fails, it falls back to the configured access key and secret access key. #### Option 2: With access key and secret access key +These environment variables are named for AWS, but they also apply to S3-compatible object stores that issue access-key credentials. + | Environment variable | Description | | --- | --- | | `AWS_ACCESS_KEY_ID` | The id of the AWS access key for the desired account. | | `AWS_SECRET_ACCESS_KEY` | The secret AWS access key for the desired account. | | `AWS_REGION` | (Optional) The AWS Region. If not provided, the module will try to parse `AWS_DEFAULT_REGION`. | +#### S3-compatible endpoints + +To use an S3-compatible object store, set `BACKUP_S3_ENDPOINT` to the provider's S3 endpoint host, optionally including a port, and authenticate with `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY`. Set `AWS_REGION` if your provider requires one. + +``` +ENABLE_MODULES=backup-s3 +BACKUP_S3_BUCKET=weaviate-backups +BACKUP_S3_ENDPOINT=your-s3-endpoint.example.com # host[:port], no scheme +BACKUP_S3_USE_SSL=true +AWS_ACCESS_KEY_ID= +AWS_SECRET_ACCESS_KEY= +# Optional: set if your provider requires a region. +# AWS_REGION= +``` + ### GCS (Google Cloud Storage)