Package Exports
- strapi-provider-upload-ts-minio
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (strapi-provider-upload-ts-minio) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
strapi-provider-upload-ts-minio
This upload provider for Strapi uses the JavaScript Minio.Client to upload files to a (self hosted) instance of Minio.
It's compatible with the the strapi 3.1.1.
Installation and basic usage
npm i strapi-provider-upload-ts-minio
Add in config/plugins.js
something like this:
Minimal config
// File: ./config/plugins.js
module.exports = ({ env }) => ({
upload: {
provider: 'ts-minio',
providerOptions: {
accessKey: env('MINIO_ACCESS_KEY'),
secretKey: env('MINIO_SECRET_KEY'),
bucket: env('MINIO_BUCKET'),
endPoint: env('MINIO_ENDPOINT'),
},
},
});
Advanced config
// File: ./config/plugins.js
module.exports = ({ env }) => ({
upload: {
provider: 'ts-minio',
providerOptions: {
accessKey: env('MINIO_ACCESS_KEY'),
secretKey: env('MINIO_SECRET_KEY'),
bucket: env('MINIO_BUCKET'),
internalEnpoint: env('MINIO_INTERNAL_ENDPOINT'),
externalEnpoint: env('MINIO_EXTERNAL_ENDPOINT'),
port: parseInt(env('MINIO_PORT'), 10) || 9000,
},
},
});
Run Strapi with env:
- access key (ex: username)
- secret key (ex: Q.ixuW@JGV!*ENWH9Ut62B!3)
- internalEndpoint (ex: https://play.minio.io:1234)
- externalEndpoint (ex: https://cdn.minio.io)
- bucket (must exist on your minio server ex: bucketname)
Run Strapi with env:
MINIO_INTERNAL_ENDPOINT=https://play.minio.io:1234 \
MINIO_EXTERNAL_ENDPOINT=https://cdn.minio.io \
MINIO_ACCESS_KEY=username \
MINIO_SECRET_KEY=Q.ixuW@JGV!*ENWH9Ut62B!3 \
MINIO_BUCKET=bucketname \
npm run start
From the providers list select Minio Server
NOTE: bucket policy must be set to allow your file to be readable. (just set it to: prefix *, readonly)
Config
There are only a couple of settings one has to provide to make it work. The following config settings are available:
Config Label | Internal Name | Value |
---|---|---|
Access API Token | accessKey | string |
Secret Access Token | secretKey | string |
Bucket | bucket | string |
Endpoint | endPoint/endpoint | string |
Internal Endpoint | internalEndpoint | string |
External Endpoint | externalEndpoint | string |
Port | port | string |
SSL | useSSL | string(true for ssl, anything else for false) |
Folder | folder | string |
Thanks for examples
- strapi-provider-upload-tp-minio
- itechops/strapi-provider-upload-minio
- kyuumeitai/strapi-provider-upload-minio
Links
Write me and I help you if you have a problems
Sponsorship
- Thanks TrafficStars
Contributors ✨
Igor Suvorov 💬 💻 🎨 📖 💡 🤔 👀 ⚠️ ️️️️♿️ |
Thanks goes to these wonderful people (emoji key):
License
This project is licensed under the MIT License - see the MIT License file for details