diff --git a/docs/docs/cli/index.md b/docs/docs/cli/index.md new file mode 100644 index 0000000000..e69de29bb2 diff --git a/docs/docs/self-hosting/administration/object-storage.md b/docs/docs/self-hosting/administration/object-storage.md index f92d6eae40..15345104c9 100644 --- a/docs/docs/self-hosting/administration/object-storage.md +++ b/docs/docs/self-hosting/administration/object-storage.md @@ -63,16 +63,25 @@ It has no relation to Backblaze, Wasabi or Scaleway. Each bucket's endpoint, region, key and secret should be configured accordingly if using an external bucket. -A sample configuration for `b2-eu-cen` is provided, which can be used for other -2 buckets as well: +If a bucket has SSL support enabled, set `s3.are_local_buckets` to `false`. Enable path-style URL by setting `s3.use_path_style_urls` to `true`. -```yaml -b2-eu-cen: - key: - secret: - endpoint: localhost:3200 - region: eu-central-2 - bucket: b2-eu-cen +::: note + +You can configure this for individual buckets over defining top-level configuration if you are using the latest server image (August 2025) + +::: + +A sample configuration for `b2-eu-cen` is provided, which can be used for other 2 buckets as well: + +``` yaml + b2-eu-cen: + are_local_buckets: true + use_path_style_urls: true + key: + secret: + endpoint: localhost:3200 + region: eu-central-2 + bucket: b2-eu-cen ``` ## CORS (Cross-Origin Resource Sharing) diff --git a/docs/docs/self-hosting/installation/config.md b/docs/docs/self-hosting/installation/config.md index 7156046c73..a5bc6b3c7d 100644 --- a/docs/docs/self-hosting/installation/config.md +++ b/docs/docs/self-hosting/installation/config.md @@ -96,8 +96,8 @@ provide correct credentials for proper connectivity within Museum. The `s3` section within `museum.yaml` is by default configured to use local MinIO buckets when using `quickstart.sh` or Docker Compose. -If you wish to use an external S3 provider, you can edit the configuration with -your provider's credentials, and set `s3.are_local_buckets` to `false`. +If you wish to use an external S3 provider with SSL, you can edit the configuration with +your provider's credentials, and set `s3.are_local_buckets` to `false`. Additionally, you can configure this for specific buckets in the corresponding bucket sections in the Compose file. If you are using default MinIO, it is accessible at port `3200`. Web Console can be accessed by enabling port `3201` in the Compose file. @@ -111,11 +111,11 @@ and [troubleshooting](/self-hosting/troubleshooting/uploads) sections. | Variable | Description | Default | | -------------------------------------- | -------------------------------------------- | ------- | -| `s3.b2-eu-cen` | Primary hot storage S3 config | | +| `s3.b2-eu-cen` | Primary hot storage bucket configuration | | | `s3.wasabi-eu-central-2-v3.compliance` | Whether to disable compliance lock on delete | `true` | -| `s3.scw-eu-fr-v3` | Optional secondary S3 config | | -| `s3.wasabi-eu-central-2-derived` | Derived data storage | | -| `s3.are_local_buckets` | Use local MinIO-compatible storage | `false` | +| `s3.scw-eu-fr-v3` | Cold storage bucket configuration | | +| `s3.wasabi-eu-central-2-v3` | Secondary hot storage configuration | | +| `s3.are_local_buckets` | | `true` | | `s3.use_path_style_urls` | Enable path-style URLs for MinIO | `false` | ### Encryption Keys diff --git a/server/config/example.yaml b/server/config/example.yaml index 0fbd2f61b7..156f613d6e 100644 --- a/server/config/example.yaml +++ b/server/config/example.yaml @@ -23,12 +23,17 @@ s3: # Only path-style URL works if disabling are_local_buckets with MinIO use_path_style_urls: true b2-eu-cen: + # Uncomment the below configuration to override the top-level configuration + # are_local_buckets: true + # use_path_style_urls: true key: secret: endpoint: localhost:3200 region: eu-central-2 bucket: b2-eu-cen wasabi-eu-central-2-v3: + # are_local_buckets: true + # use_path_style_urls: true key: secret: endpoint: localhost:3200 @@ -36,6 +41,8 @@ s3: bucket: wasabi-eu-central-2-v3 compliance: false scw-eu-fr-v3: + # are_local_buckets: true + # use_path_style_urls: true key: secret: endpoint: localhost:3200 diff --git a/server/configurations/local.yaml b/server/configurations/local.yaml index 70d7589280..388c1a80a5 100644 --- a/server/configurations/local.yaml +++ b/server/configurations/local.yaml @@ -135,12 +135,17 @@ s3: # primary: b2-eu-cen # secondary: wasabi-eu-central-2-v3 b2-eu-cen: + # Uncomment to override top-level bucket configuration for URL addressing and external buckets + # are_local_buckets: true + # use_path_style_urls: true key: secret: endpoint: region: bucket: wasabi-eu-central-2-v3: + # are_local_buckets: true + # use_path_style_urls: true key: secret: endpoint: @@ -152,6 +157,8 @@ s3: # Currently this flag is only honoured for the Wasabi v3 bucket. compliance: true scw-eu-fr-v3: + # are_local_buckets: true + # use_path_style_urls: true key: secret: endpoint: diff --git a/server/quickstart.sh b/server/quickstart.sh index a656437917..6b042a728b 100755 --- a/server/quickstart.sh +++ b/server/quickstart.sh @@ -167,14 +167,23 @@ db: password: $pg_pass s3: + # Top-level configuration for buckets, you can override by specifying these configuration in the desired bucket. + # Set this to false if using external object storage bucket or bucket with SSL are_local_buckets: true + # Set this to false if using subdomain-style URL. This is set to true for ensuring compatibility with MinIO when SSL is enabled. + use_path_style_urls: true b2-eu-cen: + # Uncomment the below configuration to override the top-level configuration + # are_local_buckets: true + # use_path_style_urls: true key: $minio_user secret: $minio_pass endpoint: localhost:3200 region: eu-central-2 bucket: b2-eu-cen wasabi-eu-central-2-v3: + # are_local_buckets: true + # use_path_style_urls: true key: $minio_user secret: $minio_pass endpoint: localhost:3200 @@ -182,6 +191,8 @@ s3: bucket: wasabi-eu-central-2-v3 compliance: false scw-eu-fr-v3: + # are_local_buckets: true + # use_path_style_urls: true key: $minio_user secret: $minio_pass endpoint: localhost:3200