MinIO S3 Storage Plugin
Author: shenfor
Version: 0.0.1
Type: datasource
Description
This plugin integrates with MinIO, enabling automatic access to your MinIO buckets and objects. It supports browsing files and folders within your MinIO bucket and can directly download files for use on platforms like Dify.
Features
- List all available buckets in your MinIO server
- List objects within a specific bucket, with support for prefix filtering and pagination
- Download files directly from MinIO buckets
- Secure credential validation through the provider component
Configuration
To use this plugin, you need to provide the following configuration:
- MinIO Endpoint: The endpoint URL of your MinIO server (e.g., minio.example.com:9000)
- Access Key: Your MinIO access key
- Secret Key: Your MinIO secret key
- Use HTTPS: Whether to use HTTPS for connections (default: true)
Usage
The plugin supports three main operations:
- list_buckets: List all available buckets
- list_objects: List objects within a specific bucket, with optional prefix filtering and pagination
- download_file: Download a specific file from a bucket
Development Structure
This plugin follows the Dify plugin development best practices with separate components:
- provider/: Contains the credential validation logic
- datasources/: Contains the actual implementation of the MinIO operations
Requirements
- Python 3.8+
- dify_plugin<0.6.0,>=0.5.0
- minio (兼容版本: 7.2.20及以上)
Compatibility Notes
- 本插件已适配minio库7.2.20版本,通过动态参数构建机制确保在不同版本的minio库上都能正常工作
- 为保证最佳兼容性,建议使用指定版本范围的依赖包