Nous revoilà pour un nouvel article après une longue période d’absence. Aujourd’hui nous verrons comment utiliser le service de stockage Spaces de DigitalOcean dans un projet Laravel.
1- Qu’est-ce que Spaces ?
Spaces est un service de stockage d’objets de DigitalOcean compatible avec S3 qui vous permet de stocker et de servir de grandes quantités de données (nous nous limiterons à cette définition ). Pour plus d’information cliquez-ici .
2- Création d’un Space sur le dashboard de DigitalOcean
Nous verrons comment créer un space dans notre dashboard. Ce n’est rien de compliqué.
a – Cliquez sur Spaces sur la barre latérale gauche de votre dashboard et ensuite sur la page qui va s’afficher cliquez sur Create Space
b- 1 – Choisissez un datacenter et aussi si vous voulez activez la CDN sur votre Space.
Dans notre cas, nous avons choisi Frankfurt comme datacenter et nous n’avons pas activé la CDN.
b-2- Dans la dernière partie, nous configurerons les droits sur le Space que nous avons créé, ensuite renseignerons un nom pour le sous-domaine qui sera utilisé et pour finir, nous choisirons le projet auquel nous voulons associer le nouveau Space.
Cliquez sur le bouton Create a space. Vous aurez par la suite une nouvelle page qui représentera votre Space de stockage. Passons maintenant au projet Laravel.
2- Utilisation de Space dans un projet Laravel
a- Ajoutez la configuration dans le fichier filesytems
b- Ajoutez les informations dans le fichier d’environnement
Avant de mettre les configurations dans le fichier d’environnement nous générerons une paire de clé d’accès que nous utiliserons pour pouvoir effectuer des opérations sur notre espace de stockage.
Pour ce faire :
- Cliquez à nouveau sur Spaces dans le menu latéral gauche ;
- Sur la nouvelle page cliquez sur Generate new key ;
- Vous aurai ensuite un formulaire pour renseigner le nom de votre clé ;
- Cliquez ensuite sur le bouton bleu. Vous venez de générer vos clés.
Pour les variables d’environnement mettez ceci dans le fichier .env
- SPACES_KEY il faut indiquer la première clé à votre droite ;
- SPACES_SECRET il faut indiquer la deuxième clé à votre droite ;
- SPACE_ENDPOINT il faut indiquer ;
- Pour le reste des clé vous pouvez indiquer ce que vous voulez ;
c- Créez un provider pour gérer les opérations CRUD sur votre espace de stockage Spaces
d- Installez ensuite ces deux packages s’ils ne sont pas encore dans votre projet
e- Ajoutez ensuite ce bout de code dans la fonction boot du provider que nous venons de créer
f- Enregistrez le provider en l’ajoutant dans le tableau providers contenu dans le fichier app.php
Voilà! C’était tout.
Pour enregistrer ou supprimer un ficher dans votre espace de stockage Spaces depuis votre application Laravel, vous avez juste à utiliser les méthodes statiques et helpers offerts par Laravel pour manipuler les fichiers.
Nous espérons que vous avez trouvé cet article instructif. N’oubliez pas de vous abonner à notre blog et de laisser plein de commentaires si vous avez éventuellement des questions.