page-proxy/src/module/minio.ts
2025-03-26 01:17:46 +08:00

22 lines
765 B
TypeScript

import { Client } from 'minio';
import { useConfig } from '@kevisual/use-config/env';
const config = useConfig();
const minioConfig = {
bucketName: config.MINIO_BUCKET_NAME,
endPoint: config.MINIO_ENDPOINT,
port: config.MINIO_PORT,
useSSL: config.MINIO_USE_SSL === 'true',
accessKey: config.MINIO_ACCESS_KEY,
secretKey: config.MINIO_SECRET_KEY,
};
// const config = useConfig<MinioConfig>();
const { port, endPoint, useSSL } = minioConfig;
export const minioUrl = `http${useSSL ? 's' : ''}://${endPoint}:${port || 9000}`;
export const minioResources = `${minioUrl}/resources`;
export const minioClient = new Client(minioConfig);
export const bucketName = minioConfig.bucketName;
if (!minioClient) {
throw new Error('Minio client not initialized');
}