This simple script allows you to upload any media to your MinIO instance. Strapi MinIO Provider Upload
Installation
# Using NPM
npm i @notuslabs/strapi-provider-upload-minio
# Using Yarn
yarn add @notuslabs/strapi-provider-upload-minio
Configuration
Create or update the file at ./config/plugins.js
with the following:
module.exports = {
// ...
upload: {
config: {
provider: "strapi-provider-upload-minio",
providerOptions: {
accessKey: env("MINIO_ACCESS_KEY"),
secretKey: env("MINIO_SECRET_KEY"),
endpointURL: env("MINIO_ENDPOINT_URL"), // Example: https://play.min.io (must include protocol, port is optional)
bucket: env("MINIO_BUCKET"),
},
},
},
// ...
};
This are the available options:
Variable | Description | Default Value |
---|---|---|
accessKey |
The access key for your MinIO instance. | undefined |
secretKey |
The secret key for your MinIO instance. | undefined |
endpointURL |
The endpoint URL for your MinIO instance. | undefined |
bucket |
The bucket name for your MinIO instance. | undefined |
usePathStyle |
Whether to use path style URLs (<S3_INSTANCE_HOST>/<YOUR_BUCKET>) instead of (<YOUR_BUCKET>.<S3_INSTANCE_HOST>). | true |
publicURL |
The URL which will be given for your files through Strapi | endpointURL |
extraOptions |
Extra options to pass to the MinIO client. See docs for more info | undefined |