Construire une application Strapi connectée à Public Cloud Databases pour PostgreSQL
Découvrez comment créer une application Strapi connectée à un service PostgreSQL managé OVHcloud
Objectif
Dans ce tutoriel, nous allons vous montrer comment créer une application Strapi utilisant le service de base de données PostgreSQL managée OVHcloud.
OVHcloud fournit des services dont vous êtes responsable de la configuration et de la gestion. Vous êtes donc responsable de leur bon fonctionnement.
Ce tutoriel est conçu pour vous aider autant que possible dans les tâches courantes. Si vous rencontrez des difficultés pour réaliser ces actions, veuillez contacter un prestataire de services spécialisé et/ou en discuter avec notre communauté d'utilisateurs. OVHcloud ne peut pas vous fournir d'assistance technique à ce sujet.
Avant de commencer
Vous devez être en mesure de commander une solution de base de données dans l'espace client OVHcloud, comme expliqué dans notre guide Bien démarrer avec Public Cloud Databases.
Comme Strapi est écrit en Javascript, des paquets tels que nodejs, nvm et yarn sont nécessaires pour ce tutoriel.
Accès à l'espace client OVHcloud
- Lien direct :
- Chemin de navigation :
Public Cloud> Sélectionnez votre projet
En pratique
Créer une base de données PostgreSQL
Souscrire au service
Cliquez sur Databases dans le menu de navigation de gauche, sous Storage.
Cliquez sur le bouton Créer une instance. (Créer un service si votre projet contient déjà des bases de données.)
Étape 1 : sélectionner une base de données PostgreSQL
Cliquez sur la base de données PostgreSQL, puis sélectionnez la version à installer dans le menu déroulant.
Cliquez sur Suivant pour continuer.
Étape 2 : sélectionner une solution
À cette étape, choisissez le plan de service qui vous convient. Vous pourrez faire évoluer le plan après la création.
Veuillez consulter la page des capacités pour des informations détaillées sur les propriétés de chaque plan.
Cliquez sur Suivant pour continuer.
Étape 3 : sélectionner un emplacement
Choisissez la région géographique du datacenter dans lequel votre base de données sera hébergée.
Cliquez sur Suivant pour continuer.
Étape 4 : configurer les nœuds de la base de données
Vous pouvez choisir le modèle de nœud à cette étape. Le nombre initial et maximal de nœuds dépend de la solution choisie à l'étape 2.
Veuillez consulter la page des capacités pour des informations détaillées sur les ressources matérielles et les autres propriétés de l'installation de la base de données MySQL.
Notez les informations tarifaires et cliquez sur Suivant pour continuer.
Étape 5 : configurer vos options
Vous pouvez nommer votre base de données à cette étape.
Cliquez sur Suivant pour continuer.
Étape 6 : résumé et confirmation
La dernière section affiche un résumé de votre commande ainsi que l'équivalent API de la création de cette instance de base de données avec l'API OVHcloud.
Cliquez sur Créer un service de base de données pour continuer.
En quelques minutes, votre nouveau service de base de données sera déployé. Des messages dans l'espace client OVHcloud vous informeront lorsque la base de données sera prête à être utilisée.
Votre base de données est prête lorsque le statut du cluster est « Ready », le statut du nœud est vert et le nombre d'utilisateurs est réglé sur « 1 user ».
Autoriser votre adresse IP
Pour des raisons de sécurité, la configuration réseau par défaut n'autorise aucune connexion entrante. Pour permettre à votre application ou à votre environnement de développement d'accéder à votre service de base de données PostgreSQL, vous devez ajouter vos adresses IP à la liste des adresses autorisées du service.
Ajouter vos IP à la liste des IP autorisées de la base de données
En suivant la documentation associée sur la manière d'autoriser les adresses IP appropriées, ajoutez vos IP à la liste des adresses autorisées.
Tester la connexion à la base de données PostgreSQL
Un moyen simple et rapide de tester la connexion est d'utiliser l'interface en ligne de commande (CLI) de Postgre psql.
💡 Astuce : si vous êtes familier avec Docker ou Kubernetes, vous pouvez utiliser l'outil psql à l'intérieur d'une image Docker postgres au lieu d'installer l'outil en local.
Exemples :
ou
Se connecter à la base de données
Les paramètres utiles sont les suivants :
- L'hôte (db Host) et le port (db Port) de la base de données
- Récupérez-les depuis l'onglet « General Information »
- Le nom de la base de données (db Name)
- Récupérez-le depuis l'onglet « Databases », généralement « defaultdb »
- L'utilisateur de la base de données (db User)
- Récupérez-le depuis l'onglet « Users », généralement « avnadmin »
- Le mot de passe de la base de données (db Password)
- Récupérez-le après l'avoir régénéré.
Connectez-vous maintenant à la base de données avec la commande suivante
Saisissez le mot de passe et appuyez sur Entrée.
La configuration est terminée, votre base de données PostgreSQL managée est pleinement opérationnelle. Allons plus loin en l'utilisant avec Strapi.
Avant de commencer, préparez votre environnement
Vous devez ici vérifier vos versions de nodejs et de yarn.
Selon la documentation officielle sur GitHub, vérifiez que votre installation nodejs existante correspond à « NodeJS >= 12 <= 16 ».
Aucune version spécifique de yarn n'est requise ; ce tutoriel a été réalisé avec la version 1.22.17.
Vous pouvez suivre ces différents tutoriels si vous avez besoin d'installer certains de ces outils :
Déclarer la version de nodejs
Nous voulons utiliser la dernière version LTS de nodejs. Dans votre environnement de développement, utilisez donc cette commande :
Configurer une nouvelle instance de Strapi
Strapi propose un moyen simple d'installer son produit, avec yarn. Exécutez la commande suivante dans un terminal :
Vous serez invité à choisir entre la méthode Quickstart ou Custom, sélectionnez Custom et appuyez sur Entrée.
Si vous choisissez Quickstart, les paramètres par défaut seront appliqués et un serveur démarrera automatiquement.
À l'étape suivante, sélectionnez postgres et appuyez sur Entrée.
Ensuite, saisissez les paramètres de votre base de données PostgreSQL, et sélectionnez Yes lorsqu'il vous est demandé d'activer la connexion SSL.
Si vous préférez choisir No lorsqu'il vous est demandé d'activer la connexion SSL, voici ce qui se passe :
Il s'agit d'un bug connu ; vous pouvez suivre l'issue ici : https://github.com/strapi/strapi/issues/12058.
Nous pouvons le corriger en modifiant manuellement le fichier de configuration de la base de données.
Ouvrez le fichier config/database.js.
Il devrait ressembler à ceci :
Remplacez la ligne :
par cette ligne :
Enregistrez et fermez le fichier.
Maintenant, si vous choisissez Yes lorsqu'il vous est demandé d'activer la connexion SSL, récupérez le certificat CA depuis l'espace client OVHcloud :
Enregistrez le fichier généré dans le dossier config, juste à côté du fichier database.js, et renommez-le en ca-certificate.crt.
Ouvrez maintenant le fichier config/database.js et modifiez le bloc ssl comme suit :
où ${__dirname} est l'emplacement du dossier config.
Enregistrez et fermez le fichier, la configuration est terminée !
Démarrer Strapi
Lancez l'application Strapi avec la commande yarn :
Félicitations ! Vous venez de terminer la configuration, le serveur démarre et ouvre votre navigateur sur la page de création du compte d'administration http://localhost:1337/admin/auth/register-admin.
Remplissez les champs du formulaire comme demandé, puis appuyez sur le bouton Let's start.
Vous utilisez maintenant une application Strapi connectée à une base de données PostgreSQL managée OVHcloud.
Contrôles
Ajouter une entrée dans Strapi
Depuis l'interface d'administration, cliquez sur le menu Content Manager, et ajoutez un utilisateur, par exemple :
Puis appuyez sur le bouton Save.
Vérifier la base de données
Comme décrit ci-dessus, connectez-vous à la base de données PostgreSQL avec l'interface en ligne de commande psql.
Puis recherchez, dans la table up_users, l'entrée précédemment créée. Ici, l'utilisateur se nomme « demo » :
Nettoyage
Pour nettoyer votre installation Strapi, assurez-vous qu'elle est bien arrêtée en appuyant sur CTRL+C dans le terminal utilisé pour la lancer, puis supprimez votre dossier d'installation.
Pour nettoyer votre base de données PostgreSQL, utilisez l'espace client OVHcloud pour supprimer votre service PostgreSQL managé :
Nous voulons vos retours !
Nous serions ravis de répondre à vos questions et apprécions tout retour que vous pourriez nous faire.
Si vous avez besoin d'une formation ou d'une assistance technique pour la mise en oeuvre de nos solutions, contactez votre commercial ou cliquez sur ce lien pour obtenir un devis et demander une analyse personnalisée de votre projet à nos experts de l’équipe Professional Services.
Vous êtes sur Discord ? Rejoignez notre chaîne via https://discord.gg/ovhcloud et interagissez directement avec l’équipe qui développe notre service de bases de données !