最新版

This commit is contained in:
dongchangxi committed 2025-12-16 17:02:04 +08:00
1 parent b8f5091514
commit 47bad0c0cb
11 files changed
+100 -31

No files matched your search

@@ -15,7 +15,7 @@ def get_bucket_name():
global _bucket_name
if _bucket_name is None:
# 优先从配置文件读取,如果没有则从环境变量读取,最后使用默认值
_bucket_name = cfg('minio.bucket', None) or os.getenv('MINIO_BUCKET', 'default-bucket')
_bucket_name = cfg('minio.bucket', None)
log(f"MiniIO 存储桶名称: {_bucket_name}")
return _bucket_name
@@ -33,10 +33,17 @@ class MiniIOClientSingleton:
if self._client is None:
# MiniIO 连接配置
# 可以从环境变量或配置文件中读取
endpoint = os.getenv('MINIO_ENDPOINT', 'localhost:9000')
access_key = os.getenv('MINIO_ACCESS_KEY', 'minioadmin')
secret_key = os.getenv('MINIO_SECRET_KEY', 'minioadmin')
secure = os.getenv('MINIO_SECURE', 'False').lower() == 'true'
endpoint = cfg('minio.endpoint', 'localhost:9000')
access_key = cfg('minio.access_key', 'minioadmin')
secret_key = cfg('minio.secret_key', 'minioadmin')
# secure 参数:True 使用 HTTPS,False 使用 HTTP
# 从配置文件读取,如果没有配置则默认为 False(HTTP)
secure_config = cfg('minio.secure', False)
# 确保是布尔值(处理字符串 'true'/'false' 的情况)
if isinstance(secure_config, str):
secure = secure_config.lower() in ('true', '1', 'yes')
else:
secure = bool(secure_config)
try:
self._client = Minio(
@@ -45,9 +52,16 @@ class MiniIOClientSingleton:
secret_key=secret_key,
secure=secure
)
log(f"MiniIO 客户端初始化成功: {endpoint}")
log(f"MiniIO 客户端初始化成功: {endpoint} (secure={secure})")
except Exception as e:
log(f"MiniIO 客户端初始化失败: {str(e)}")
error_msg = str(e)
# 检查是否是端口错误
if "API port" in error_msg or "InvalidArgument" in error_msg:
log(f"MiniIO 连接失败: 请确保使用的是 API 端口(通常是 9000),而不是 Console 端口(通常是 9001)")
log(f"当前配置的 endpoint: {endpoint}")
log(f"错误详情: {error_msg}")
else:
log(f"MiniIO 客户端初始化失败: {error_msg}")
raise
return self._client