Strapi enregistre des fichiers dans Yandex Object Storage

Peut-être avez-vous déjà essayé Strapi et vous l'avez même tellement aimé que vous avez décidé de le déployer sur l'un des serveurs.





Par exemple, j'ai déployé sur un VPS avec Node, nginx, pm2. Étant donné que VPS a généralement de maigres capacités de stockage, vous souhaitez stocker toutes vos affaires sur l'un des stockages modernes.





Strapi a conçu le connecteur backet Amazon S3 pour nous. Ce plugin est déjà inclus dans le référentiel strapi standard, et était auparavant présenté comme un plugin communautaire.





Vous pouvez voir comment connecter un compartiment Amazon S3 ici: une

vidéo d'Alex

(aujourd'hui, les fichiers de configuration doivent être écrits différemment - mais le plan général est conservé).





Dans cet article, nous envisagerons de connecter Yandex Object Storage. Tout d'abord, bien sûr, vous devez vous inscrire sur le cloud Yandex. Après cela, sélectionnez Stockage d'objets dans la console de gestion.





Cliquez sur le bouton jaune "Créer un seau" et remplissez les champs comme indiqué sur l'image - c.-à-d. définir l'accès public en lecture et à la liste des objets, la classe de stockage est standard.





Après avoir cliqué sur le bouton "Créer un bucket", vous le verrez dans la liste des buckets:





Strapi. ( ) ( ) - default - .





" " - ( )





- , .





" " " ", . - :





- .







npx create-strapi-app strapi-yandex-cloud --quickstart







Strapi strapi-yandex-cloud . .





, - strapi-yandex-cloud :

npm i -S strapi-provider-upload-aws-s3







- . onfig/plugins.js ( plugins.js config) :





module.exports = ({ env })=>({
  upload: {
    provider: 'aws-s3',
    providerOptions: {
      endpoint: 'https://storage.yandexcloud.net',
      accessKeyId: env('AWS_ACCESS_KEY_ID'),
      secretAccessKey: env('AWS_ACCESS_SECRET'),
      region: env('AWS_REGION'),
      params: {
        Bucket: env('AWS_BUCKET'),
      },
    },
  },
});
      
      



. .env :





HOST=0.0.0.0
PORT=1337

AWS_ACCESS_KEY_ID=pg2ywMziH_9zeZfA7t3w
AWS_ACCESS_SECRET="aTiO354YNpnO9zKjqBiP1U3nm3F3CoXGLYcldZBC"
AWS_REGION="ru-central1"
AWS_BUCKET="strapi-backet-test"
      
      



strapi-backet-test - , , - , .





!

- npm run develop.

strapi Media Library, .





cloud.yandex.ru :





. , Strapi .





Media Library , , pdf . Strapi Rest API Media Library.





P.S. , .








All Articles