Laravel, un puissant framework PHP, et Inertia.js, une bibliothèque JavaScript dynamique, collaborent de manière transparente pour rationaliser le développement d’applications. Laravel simplifie les tâches côté serveur, tandis qu’Inertia.js facilite les interactions côté client. Ensemble, ils permettent un flux de données fluide et des mises à jour en temps réel, ce qui vous aide à créer rapidement des applications web réactives.

Le déploiement d’une application Laravel-Inertia à l’aide du service d’hébergement d’applications de Kinsta se fait en quelques étapes :

  1. Configurez la base de données en utilisant le service d’hébergement de base de données de Kinsta.
  2. Hébergez votre application et configurez les buildpacks pour Node.js et PHP, en intégrant la base de données.
  3. Configurez Node.js pour installer Inertia et les dépendances PHP pour l’environnement Inertia.

Ce tutoriel vous guide pas à pas dans ce processus.

Comprendre les pré-requis de déploiement

Pour suivre ce tutoriel, assurez-vous que vous disposez des conditions préalables suivantes :

  • Connaissance fondamentale de Laravel et Vue.js
  • Connaissance de la base de données
  • Un compte Kinsta. Commencez un essai gratuit aujourd’hui.

Dans cet article, vous allez déployer une application de blog qui affiche une liste d’articles et permet au lecteur de consulter un article spécifique. L’application a été stylisée à l’aide de Tailwind CSS et construite avec Laravel et Vue.js.

L’environnement d’exécution JavaScript Node.js gère le rendu côté serveur. Il coordonne la communication entre les composants de l’application frontend Inertia.js et le backend Laravel pour les mises à jour dynamiques du frontend depuis le côté serveur.

L'application Kinsta Blog avec un titre et une liste d'articles.
L’application Kinsta Blog avec un titre et une liste d’articles.

Pour plus d’informations sur la création de cette application, lisez Comment utiliser Inertia.js dans vos projets Laravel. Vous pouvez également télécharger le code source complet de l’application.

Comment déployer l’application sur Kinsta

Commencez par configurer une base de données pour votre application sur l ‘hébergement de base de données de Kinsta. Pour cela, suivez les étapes suivantes :

  1. Connectez-vous ou créez un compte pour afficher votre tableau de bord MyKinsta.
  2. Cliquez sur Bases de données dans la colonne latérale de gauche, puis cliquez sur Ajouter une base de données.
  3. Dans la section Détails de base, saisissez les détails de votre base de données. Cela inclut le type de base de données (MySQL) et la version (8.0). Cliquez ensuite sur Continuer.
  4. La section Résumé affiche les détails de la facture du service et vos informations de facturation. Confirmez et cliquez sur Créer une base de données.

Comment configurer l’environnement Laravel

Pour configurer l’environnement Laravel sur l’hébergement d’applications Kinsta. Suivez les étapes suivantes :

  1. Cliquez sur Applications dans la colonne latérale de gauche de MyKinsta, puis cliquez sur Ajouter une application.
  2. Choisissez le dépôt de votre application, activez le déploiement automatique lors de la validation, saisissez le nom de l’application et sélectionnez l’emplacement du centre de données. Votre application et votre base de données doivent se trouver dans la même région.
  3. Ensuite, saisissez vos variables d’environnement. Saisissez APP_KEY dans le champ Key 1. Utilisez le générateur en ligne de Laravel pour créer une clé pour la valeur 1. Cliquez sur Continuer.
  4. Dans l’onglet Environnement de construction, sélectionnez Utiliser les Buildpacks pour configurer l’image du conteneur. Cette option vous permet de choisir les buildpacks ultérieurement.
  5. Dans l’onglet Ressources, indiquez la commande de démarrage de votre application. Comme il s’agit d’une application Laravel, elle utilise la commande suivante :
    php artisan serve --host 0.0.0.0 --port 8080
  6. L’onglet Résumé affiche la facture avec votre pod et votre moyen de paiement. Confirmez toutes les informations et cliquez sur Créer une application.

Le déploiement de votre application démarre. Mais il échoue car vous devez encore ajouter les buildpacks nécessaires à la construction de votre application Laravel-Inertia.

Ajouter des Buildpacks

  1. Dans le menu de gauche de votre application, cliquez sur Réglages.
  2. Ensuite, cliquez sur l’onglet build et Ajout de buildpack pour ajouter les buildpacks Node.js et PHP . Ajoutez les buildpacks contenant le langage principal en dernier à la liste des buildpacks pour vous assurer que le buildpack spécifique au langage est prioritaire sur la configuration générale de l’environnement d’application.
  3. Cliquez sur Ajouter un buildpack et ajoutez les buildpacks Node.js et PHP. Assurez-vous que le buildpack du langage principal (PHP) est ajouté en dernier.

    Ajout de buildpacks pour l'application Laravel-Inertia.
    Ajout de buildpacks pour l’application Laravel-Inertia.

  4. Cliquez sur Déploiement dans la colonne latérale et cliquez sur Redéploiement.

Configurer l’environnement Node.js

  1. L’application Laravel-Inertia a besoin du script Vite pour que la page soit mise à jour sans être rechargée. Ainsi, dans le menu de gauche de votre compte Kinsta, cliquez sur Processus.
  2. Dans la section Processus d’exécution, cliquez sur Créer un processus. Choisissez Worker en arrière-plan comme Type de processus et ajoutez les commandes suivantes :
    npm install && npm start
    Création de commandes de démarrage Node.js pour l'application Laravel-Inertia.
    Création de commandes de démarrage Node.js pour l’application Laravel-Inertia.

    Nommez le processus comme vous voulez l’identifier dans Kinsta, comme « Node ». Sélectionnez également la taille du pod et le nombre d’instances en fonction des besoins et du budget de votre application. Ce tutoriel utilise 2 CPU avec 8Go de RAM.

  3. Cliquez sur Continuer pour créer votre processus. Cette action déclenche un redéploiement.

Configurer l’environnement de la base de données

  1. Sur la page Réglages, dans l’onglet Connexions, vous devriez voir Applications autorisées. Cliquez sur Ajouter une connexion pour ajouter la base de données en tant que connexion.
  2. Sélectionnez la base de données. En dessous, cochez Ajouter des variables d’environnement pour accéder à la base de données. Cette action remplit automatiquement toutes les variables d’environnement de la base de données.
  3. Modifiez les clés des variables pour qu’elles correspondent au fichier database.php de votre application, qui se trouve dans le dossier config à la racine de votre application.
  4. Modifiez les clés Laravel DB_DATABASE, DB_USERNAME et DATABASE_URL, comme dans la capture d’écran suivante :

    Ajout de variables d'environnement et modification des clés.
    Ajout de variables d’environnement et modification des clés.

  5. Ajoutez une autre variable d’environnement appelée APP_URL. Sa valeur est l’URL de déploiement de votre application. Vous pouvez obtenir cette information à partir de Domaines dans le menu latéral.

Migration de la base de données

  1. Dans le menu latéral, cliquez sur Processus.
  2. Dans la section Processus d’exécution, cliquez sur Créer un processus.
  3. Nommez le processus « Migration ». Sélectionnez le type Worker en arrière-plan. Collez la commande suivante dans le champ Commande de démarrage:
    php artisan migrate:fresh --seed --force

    Cette commande migre la table Article et ajoute dix articles à l’application. Vos processus doivent ressembler à la capture d’écran suivante, avec les processus Node, Migration et Web et leurs détails.

    Processus d'exécution lors du déploiement de l'application Laravel-Inertia.
    Processus d’exécution lors du déploiement de l’application Laravel-Inertia.

  4. Dans le menu latéral, sélectionnez Déploiements. Cliquez sur Dernier déploiement. Vous devriez voir une page comme la suivante, avec un titre et une liste d’articles avec du texte et des images de remplacement.

    L'application Laravel-Inertia est déployée avec succès sur Kinsta.
    L’application Laravel-Inertia est déployée avec succès sur Kinsta.

Comment surveiller et maintenir l’application après le déploiement

Après avoir déployé votre application, vous pouvez rencontrer des problèmes lorsque les requêtes augmentent. L’analyse des applications de Kinsta vous aide à surveiller ces changements et à maintenir la santé de votre application.

L’analyse montre les ressources, la performance et les requêtes HTTP pour vous donner une idée du fonctionnement de votre application. Vous pouvez rapidement observer quand votre application a besoin de plus de ressources dans les tableaux de surveillance de votre onglet de performance, puis augmenter ou réduire les ressources si nécessaire.

Les journaux d’exécution aident également votre équipe à déboguer rapidement les problèmes. Vous pouvez trouver la source du problème dans les entrées du journal, ce qui facilite la maintenance de votre application.

Comment résoudre les problèmes de déploiement courants

Vous pouvez rencontrer quelques problèmes lors du déploiement de votre application Laravel-Inertia sur Kinsta. Nous allons voir quels sont ces problèmes et comment les résoudre.

Tout d’abord, Kinsta ajoute un caractère spécial au mot de passe généré lorsque vous créez une base de données. Cela peut provoquer des erreurs de retour en arrière lorsque vous connectez la base de données à votre application Laravel-Inertia. Pour résoudre ce problème, utilisez votre mot de passe au lieu de vous fier aux mots de passe générés.

Les échecs de déploiement de l’auto-commit sont un autre problème typique. Le déploiement peut échouer si vous spécifiez une commande de démarrage incorrecte. Pour résoudre ce problème, vérifiez si vos processus contiennent des fautes de frappe ou s’ils sont incorrectement assignés à un type de processus.

Résumé

Vous savez maintenant comment déployer une application Laravel et Inertia sur Kinsta. Cela implique de définir des Buildpacks et des commandes de démarrage pour configurer l’application, de créer une base de données, puis de connecter et de migrer la base de données pour servir des données à l’application.

La combinaison de Laravel et d’Inertial vous permet de connecter votre application et votre base de données sans avoir à configurer manuellement une API, ce qui vous fait gagner du temps et de l’énergie que vous pouvez utiliser à la place pour créer de nouvelles fonctionnalités passionnantes pour votre application.

Kinsta héberge votre application et sa base de données. Vous pouvez également utiliser les connexions externes de votre base de données pour vous connecter à une application fonctionnant en dehors de Kinsta. Les 37 centres de données vous permettent d’offrir des services plus proches des utilisateurs de votre application, réduisant ainsi les délais tout en offrant une infrastructure de déploiement fiable et sécurisée.

Utilisez ce que vous avez appris dans ce tutoriel pour déployer votre application web dynamique – ou votre base de données – sur Kinsta. Commencez votre voyage de déploiement avec Kinsta dès aujourd’hui.