Intégration Simplifiée de Contabo Object Storage dans un Projet Laravel : Un Guide Complet

Dans le monde du développement web, la gestion efficace des données est cruciale pour assurer la performance et la scalabilité des applications. Laravel, étant un framework PHP robuste et flexible, offre une plateforme idéale pour bâtir des applications modernes. L’intégration d’une solution de stockage d’objets telle que Object Storage de Contabo peut significativement améliorer la gestion des données dans vos projets Laravel. Contabo Object Storage propose une solution fiable et économique pour le stockage et la récupération d’objets à grande échelle, ce qui est idéal pour les applications nécessitant une grande capacité de stockage et une accessibilité rapide aux données.

Dans cet article, je vous accompagnerai à travers les étapes essentielles pour intégrer Object Storage de Contabo dans votre projet Laravel. Que vous soyez un développeur expérimenté ou un débutant dans l’écosystème Laravel, ce guide étape par étape vous fournira les connaissances nécessaires pour tirer le meilleur parti de l’intégration du Contabo Object Storage dans vos projets Laravel.

Préparez-vous à débloquer un nouveau niveau d’efficacité et de performance pour votre application Laravel en découvrant comment le Contabo Object Storage peut transformer votre gestion des données.

1- Créer un bucket sur Contabo object storage.
Avant toute chose, nous allons d’abord créer le bucket qui va servir d’espace de stockage pour nos données. C’est très simple, vous allez voir.
Pour commencer, cliquer sur le bouton « Create bucket » disponible sur votre tableau de bord de Contabo object storage.

Sur la fenêtre qui va apparaître à votre droite, donnez un nom à votre bucket dans le champ de texte Bucket name. Laissez les valeurs par défaut pour les autres champs et cliquez sur « Create Bucket ».

Après avoir cliqué sur le bouton Create Bucket, vous allez être redirigé vers la liste de vos buckets. Cliquez ensuite sur le premier bouton avant le bouton Supprimé (bouton avec le symbole d’un panier) pour rendre votre bucket public.

Sur la fenêtre qui va apparaître à votre droite, cliquez sur « Make public » et confirmez en cliquant sur « Confirm ».

Notre bucket est prêt à l’emploi. Passons maintenant à l’étape suivante de notre guide.

2- Configuration du projet Laravel pour utilser Contabo object storage.

Avant de passer aux choses sérieuses, nous allons installer un package indispensable pour la suite. Ouvrez donc votre terminal à la racine de votre projet Laravel et tapez ceci :

composer require league/flysystem-aws-s3-v3 "^3.0" --with-all-dependencies

Après l’installation du package, ouvrez le fichier filesystems.php dans le dossier config. Nous allons ajouter une clé supplémentaire dans le tableau disk:

        'contabo' => [
            'driver' => 's3',
            'key' => env('CONTABO_ACCESS_KEY_ID'),
            'secret' => env('CONTABO_SECRET_ACCESS_KEY'),
            'region' => env('CONTABO_DEFAULT_REGION'),
            'bucket' => env('CONTABO_BUCKET'),
            'url' => env('CONTABO_URL'),
            'endpoint' => env('CONTABO_ENDPOINT'),
            'use_path_style_endpoint' => env('CONTABO_USE_PATH_STYLE_ENDPOINT', false),
            'throw' => false,
        
],

L’étape suivante consiste à renseigner ces valeurs dans votre fichier .env :

FILESYSTEM_DISK=contabo
CONTABO_ACCESS_KEY_ID=VOTRE_ACCESS_KEY_ID
CONTABO_SECRET_ACCESS_KEY=VOTRE_SECRET_ACCESS_KEY
CONTABO_DEFAULT_REGION=eu
CONTABO_BUCKET=bucket-test
CONTABO_USE_PATH_STYLE_ENDPOINT=true
CONTABO_ENDPOINT=https://eu2.contabostorage.com

CONTABO_URL=https://eu2.contabostorage.com/a95ad6c6d3b543439b6008e9dcd93e2a:bucket-test
  • FILESYSTEM_DISK

Pour cette valeur, nous allons la mettre à « contabo ». Cette valeur correspond à la nouvelle clé ajoutée dans notre tableau disk au niveau du fichier filesystems.php dans le dossier config.

  • CONTABO_ACCESS_KEY_ID et CONTABO_SECRET_ACCESS_KEY:

Ces deux valeurs se trouvent sur la page « Security & Access » sous le menu « Account ». Sur la page, ces valeurs sont au niveau de la section S3 Object Storage Credentials.

  • CONTABO_DEFAULT_REGION et CONTABO_BUCKET

Ces deux valeurs se trouvent sur la page Object Storage sous le menu Storage. Dans notre cas, les valeurs de CONTABO_DEFAULT_REGION et CONTABO_BUCKET sont « eu » et « bucket-test ».

  • CONTABO_USE_PATH_STYLE_ENDPOINT

Pour cette valeur, nous allons la mettre à true

  • CONTABO_ENDPOINT et CONTABO_URL

Pour la valeur de CONTABO_ENDPOINT, elle est égale à https ://eu2.contabostorage.com. Pour la valeur de CONTABO_URL, elle correspond à l’URL publique de notre bucket. Elle se trouve au niveau de la fenêtre qui s’ouvre en cliquant sur le bouton « Public share » :

Nous venons donc de finir la configuration de notre projet Laravel pour utiliser Contabo Object Storage.

3- Uploader un fichier dans notre bucket

Pour uploader un fichier dans notre bucket rien de très compliqué. Nous allons utiliser le bout de code que voici :

$request->file('image')->store('projects');

Voilà! J’espère que ce guide a éclairé votre chemin vers une intégration réussie de Contabo Object Storage dans votre projet Laravel. N’oubliez pas de laisser un commentaire si vous avez des questions. On se retrouve très bientôt pour un autre article.

Leave a Reply

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *