Quellcode durchsuchen

Add S3_ADDRESS_STYLE configuration option (#2934)

Leo Q vor 1 Jahr
Ursprung
Commit
7c8c233cf4
2 geänderte Dateien mit 5 neuen und 1 gelöschten Zeilen
  1. 2 0
      api/config.py
  2. 3 1
      api/extensions/ext_storage.py

+ 2 - 0
api/config.py

@@ -22,6 +22,7 @@ DEFAULTS = {
     'SERVICE_API_URL': 'https://api.dify.ai',
     'APP_WEB_URL': 'https://udify.app',
     'FILES_URL': '',
+    'S3_ADDRESS_STYLE': 'auto',
     'STORAGE_TYPE': 'local',
     'STORAGE_LOCAL_PATH': 'storage',
     'CHECK_UPDATE_URL': 'https://updates.dify.ai',
@@ -181,6 +182,7 @@ class Config:
         self.S3_ACCESS_KEY = get_env('S3_ACCESS_KEY')
         self.S3_SECRET_KEY = get_env('S3_SECRET_KEY')
         self.S3_REGION = get_env('S3_REGION')
+        self.S3_ADDRESS_STYLE = get_env('S3_ADDRESS_STYLE')
         self.AZURE_BLOB_ACCOUNT_NAME = get_env('AZURE_BLOB_ACCOUNT_NAME')
         self.AZURE_BLOB_ACCOUNT_KEY = get_env('AZURE_BLOB_ACCOUNT_KEY')
         self.AZURE_BLOB_CONTAINER_NAME = get_env('AZURE_BLOB_CONTAINER_NAME')

+ 3 - 1
api/extensions/ext_storage.py

@@ -7,6 +7,7 @@ from typing import Union
 
 import boto3
 from azure.storage.blob import AccountSasPermissions, BlobServiceClient, ResourceTypes, generate_account_sas
+from botocore.client import Config
 from botocore.exceptions import ClientError
 from flask import Flask
 
@@ -27,7 +28,8 @@ class Storage:
                 aws_secret_access_key=app.config.get('S3_SECRET_KEY'),
                 aws_access_key_id=app.config.get('S3_ACCESS_KEY'),
                 endpoint_url=app.config.get('S3_ENDPOINT'),
-                region_name=app.config.get('S3_REGION')
+                region_name=app.config.get('S3_REGION'),
+                config=Config(s3={'addressing_style': app.config.get('S3_ADDRESS_STYLE')})
             )
         elif self.storage_type == 'azure-blob':
             self.bucket_name = app.config.get('AZURE_BLOB_CONTAINER_NAME')