strapi-upload-minio-v4
v1.0.1
Published
minio provider for strapi ce 3.6.x and 4.x, private bucket supported(4.x only)
Downloads
38
Readme
This upload provider uses the JavaScript Minio.Client to upload files to a (self hosted) instance of Minio.
It's compatible with the strapi 4.x.
How to use
Installation
npm i --save strapi-upload-minio-v4
Config
For strapi ce 4.x
// file: ./config/plugins.js
module.exports = ({ env }) => ({
upload: {
config: {
provider: 'strapi-upload-minio-v4',
providerOptions: {
accessKey: env('MINIO_ACCESS_KEY', 'Q3AM3UQ867SPQQA43P2F'),
secretKey: env(
'MINIO_SECRET_KEY',
'zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG',
),
bucket: env('MINIO_BUCKET', 'test-2021-09-22'),
endPoint: env('MINIO_ENDPOINT', 'play.min.io'),
port: env('MINIO_PORT', 9000),
useSSL: env('MINIO_USE_SSL', true),
folder: env('MINIO_FOLDER', 'cms'),
host: env('MINIO_HOST', 'https://s3.yourdomain.com'),
},
},
},
})
Pictures cannot be displayed?
Mostly because of CSP, you can refer to https://github.com/strapi/strapi/issues/12886
If the image you uploaded is not displayed properly, you need to modify ./config/middlewares.js
as follows.
// ./config/middlewares.js
module.exports = [
'strapi::errors',
'strapi::cors',
'strapi::poweredBy',
'strapi::logger',
'strapi::query',
'strapi::body',
'strapi::favicon',
'strapi::public',
{
name: 'strapi::security',
config: {
contentSecurityPolicy: {
useDefaults: true,
directives: {
'connect-src': ["'self'", 'https:'],
'img-src': [
"'self'",
'data:',
'blob:',
'REPLACE_YOUR_MINIO_HOST_HERE',
],
'media-src': [
"'self'",
'data:',
'blob:',
'REPLACE_YOUR_MINIO_HOST_HERE',
],
upgradeInsecureRequests: null,
},
},
},
},
]