Ceci est un exemple de la façon de configurer une application Laravel à déployer sur les services d’hébergement d’applications de Kinsta depuis un dépôt GitHub.

Laravel est une application ordinaire basée sur PHP, donc pendant le processus de déploiement, Kinsta installe automatiquement les dépendances définies dans votre fichier composer.json.

  1. Connectez-vous à GitHub et créez un nouveau dépôt depuis ce modèle (Utiliser ce modèle > Créer un nouveau dépôt) : Kinsta – Hello World – Laravel.
  2. Laravel exige que la variable d’environnement APP_KEY soit définie. Vous pouvez générer une clé d’application vous-même localement, ou vous pouvez utiliser ce générateur de clé Laravel en ligne.
  3. Dans MyKinsta, ajoutez une application avec le dépôt Hello World Laravel. Dans Variables d’environnement, dans Clé 1, saisissez APP_KEY, et dans Valeur 1, collez la clé générée à l’étape 2, sélectionnez Disponible pendant l’exécution et Disponible pendant le processus de construction.
  4. La commande Start peut être laissée vide pour le processus web car Kinsta détecte automatiquement la commande requise lors du premier déploiement.
    Note : Le premier déploiement peut échouer car vous devez ajouter les Buildpacks nécessaires.
  5. Pour que l’application puisse construire les fichiers CSS/JS, vous devez ajouter deux Buildpacks : Node.js et PHP. Cliquez sur Réglages > Ajouter un buildpack, sélectionnez Node.js > Ajouter un buildpack. Répétez l’opération pour PHP. 
    Le buildpack qui contient le langage principal de votre application doit être le dernier dans la liste des buildpacks. Dans cet exemple, PHP est le langage principal et doit être le dernier buildpack de la liste.
  6. Cliquez sur Déploiements > Déployer maintenant > Choisissez la branche nécessaire > Déployez l’application.

L’application est disponible dès que la construction est terminée et la page d’accueil de Kinsta se charge à l’URL de votre application.

Page d'accueil Kinsta après le déploiement réussi de Laravel.
Page d’accueil Kinsta après le déploiement réussi de Laravel.

Vous préférez regarder la version vidéo ?

Connecter une base de données

Si vous souhaitez connecter votre application à une base de données, commencez par créer une base de données dans le même centre de données que votre application.

  1. Ajouter une base de données.
  2. Connectez la base de données à l’application en ajoutant une connexion interne et en sélectionnant la case à cocher Ajouter des variables d’environnement…. Les variables d’environnement seront automatiquement renseignées depuis la base de données.
  3. Certains noms de variables (clés) utilisés par Laravel sont différents de ceux créés automatiquement dans MyKinsta. Modifiez les clés des variables si nécessaire pour qu’elles correspondent aux noms de variables définis dans le fichier database.php de Laravel. Vous trouverez ci-dessous les noms de variables (clés) correspondants pour les types de bases de données que prend en charge Laravel.

Variables d’environnement

MySQL et PostgreSQL

Clé générée automatiquement Clé Laravel
DB_HOST DB_HOST
DB_PORT DB_PORT
DB_NAME DB_DATABASE
DB_USER DB_USERNAME
DB_PASSWORD DB_PASSWORD
DB_CONNECTION_URL DB_URL

Redis

Clé générée automatiquement Clé Laravel
DB_HOST REDIS_HOST
DB_PORT REDIS_PORT
DB_NAME REDIS_DB
DB_USER REDIS_USERNAME
DB_PASSWORD REDIS_PASSWORD
DB_CONNECTION_URL REDIS_URL

Laravel APP_KEY

Laravel exige que la variable d’environnement APP_KEY soit définie. Si cette clé n’est pas définie, vous verrez une page d’erreur 500 servie par Laravel. Vous pouvez générer vous-même une clé d’application localement, ou vous pouvez utiliser le générateur de clés Laravel en ligne. Une fois que vous avez une clé, vous pouvez l’ajouter comme variable d’environnement.

Buildpacks

Dans la plupart des cas, vous voudrez que l’application construise les fichiers CSS/JS, vous devrez donc ajouter ces deux Buildpacks :

  • Node.js
  • PHP

Le buildpack qui contient le langage principal de votre application doit être le dernier dans la liste des buildpacks. Dans cet exemple, PHP est le langage principal et doit être le dernier buildpack de la liste.

Configuration du serveur web

Commande de démarrage

Le processus web par défaut est heroku-php-apache2. Cet exemple inclut un fichier .htaccess qui redirige toutes les requêtes vers public/index.php pour Laravel. Si nécessaire, vous pouvez modifier cette commande lors de l’ajout de votre application (Configurer vos processus) ou sur la page Processus de l’application après le déploiement. Vous pouvez utiliser :

  • heroku-php-apache2 /public
  • php artisan serve --host 0.0.0.0 --port 8080