Comment installer Laravel Homestead pour le développement local ?

Publié: 2023-05-10

La boîte Laravel Homestead Vagrant offre un environnement préconfiguré pour créer des applications Web basées sur Laravel. Homestead vous permet de créer facilement un environnement de développement local cohérent avec l'environnement dans lequel votre application Laravel fonctionnera en production. Dans ce tutoriel, nous allons vous montrer comment installer Laravel Homestead sur votre machine locale pour une utilisation en développement.

Table des matières afficher
  • Étape 1 : Installer le logiciel requis
  • Étape 2 : Installer Homestead
  • Étape 3 : Configurer Homestead
  • Étape 4 : Démarrez Homestead
  • Étape 5 : Accédez à votre application Laravel
  • Étape 6 : Développez votre application Laravel
  • Conclusion

Étape 1 : Installer le logiciel requis

Développement VirtualBox et Vagrant-Local

Certains logiciels doivent être configurés avant que nous puissions commencer à configurer Laravel Homestead. Notre première étape consiste à configurer VirtualBox, un programme de virtualisation gratuit et open-source nous permettant d'exécuter de nombreux ordinateurs virtuels sur un seul ordinateur hôte. VirtualBox sera utilisé pour alimenter notre VM Homestead. VirtualBox est disponible en téléchargement à cette URL.

L'étape suivante consiste à configurer Vagrant, un outil de ligne de commande permettant de créer et de gérer des environnements de machines virtuelles. Notre machine virtuelle Homestead sera configurée et gérée avec l'aide de Vagrant. Vagrant est disponible en téléchargement à cette URL.

Lorsque vous avez configuré VirtualBox et Vagrant, vous êtes prêt à passer à la phase suivante.

Recommandé pour vous : 5 bonnes raisons de choisir Laravel pour un projet de développement Web.

Étape 2 : Installer Homestead

Installer Laravel Homestead

Tout d'abord, nous devrons cloner la source Homestead à partir de GitHub pour commencer le processus d'installation. Lancez votre terminal ou invite de commande et entrez :

 git clone https://github.com/laravel/homestead.git ~/Homestead

Le référentiel Homestead sera cloné dans le dossier '~/Homestead' de votre système. Le fichier de configuration 'Homestead.yaml' doit être créé en naviguant vers le répertoire '~/Homestead' et en exécutant la commande 'bash init.sh' :

 cd ~/Homestead
bash init.sh

Dans le répertoire de travail courant '~/Homestead', cette action générera le fichier de configuration 'Homestead.yaml'.

Étape 3 : Configurer Homestead

Configurer Laravel Homestead

Une fois que nous avons le fichier 'Homestead.yaml', nous pouvons l'adapter à nos spécifications. Sortez de votre éditeur de texte et chargez le fichier 'Homestead.yaml'. Un exemple de configuration comme celui-ci apparaîtra :

 ip: "192.168.10.10"
memory: 2048
cpus: 1
provider: VirtualBox
authorize: ~/.ssh/id_rsa.pub
keys:
- ~/.ssh/id_rsa
folders:
- map: ~/code
to: /home/vagrant/code
sites:
- map: Homestead.test
to: /home/vagrant/code/Laravel/public
databases:
- Homestead
Passons en revue tous les paramètres qui peuvent être ajustés :
  • 'ip' : Notre machine virtuelle Homestead utilisera cette adresse IP à l'avenir. Si l'adresse IP actuelle est utilisée sur votre réseau, vous pouvez la remplacer par toute autre adresse IP disponible.
  • 'memory' : Nous allons allouer cette quantité de RAM (en Mo) à notre VM Homestead. Selon le matériel de votre machine, vous pouvez modifier ce paramètre.
  • 'cpus' : le nombre de processeurs mis à la disposition de notre machine virtuelle Homestead. Selon les capacités de votre machine, vous pouvez modifier ce paramètre.
  • 'fournisseur' : cela hébergera notre machine virtuelle Homestead dans l'environnement de virtualisation. Le fournisseur que nous avons configuré à l'étape 1 (VirtualBox) est le fournisseur par défaut.
  • 'authorize' : L'emplacement de la clé publique SSH qui sera utilisée pour l'authentification avec la VM Homestead est indiqué ci-dessous.
  • 'keys' : localisez le fichier de clé privée SSH utilisé pour l'authentification avec la machine virtuelle Homestead et copiez le contenu à l'emplacement approprié.
  • 'dossiers' : ce qui suit est une arborescence de répertoires des dossiers partagés de la machine virtuelle Homestead avec notre système local. L'option 'map' désigne l'emplacement du dossier local, tandis que le choix 'to' définit l'emplacement du dossier sur la VM Homestead.
  • 'sites' : notre machine virtuelle Homestead hébergera les sites Web suivants. En utilisant l'option 'map', nous indiquons à Homestead le nom de domaine que nous voulons utiliser pour accéder au site localement, et avec l'option 'to', nous indiquons à Homestead le chemin vers le répertoire public du site sur notre machine virtuelle.
  • 'databases' : ce qui suit est un répertoire contenant les schémas de base de données Homestead qui seront implémentés.

Vous pouvez ajuster les paramètres de configuration en fonction de vos besoins. La RAM de la machine virtuelle peut être étendue, par exemple, ou de nouveaux sites ou bases de données peuvent être ajoutés.

Étape 4 : Démarrez Homestead

Démarrer Laravel Homestead

Après avoir configuré Homestead, nous pouvons démarrer la VM en exécutant la commande suivante dans le dossier '~/Homestead' :

 vagrant up

Le fichier « Homestead.yaml » contient les détails de configuration de la machine virtuelle, qui sera démarrée et provisionnée lorsque vous émettez cette commande. Selon la vitesse de votre système local et les ressources disponibles pour la machine virtuelle, cela peut prendre quelques minutes. Une fois la machine virtuelle prête, vous pouvez vous y connecter à l'aide de la commande :

 vagrant ssh

La machine virtuelle Homestead est accessible à l'aide d'une connexion SSH avec cette commande. Vous pouvez utiliser ce terminal pour gérer votre application Laravel et exécuter des commandes.

Étape 5 : Accédez à votre application Laravel

Accédez à votre application Laravel

Pour accéder localement à votre application Laravel pour Laravel Homestead pour le développement local, vous devez créer une entrée dans votre fichier hôte qui pointe vers l'adresse IP de la machine virtuelle Homestead (telle qu'indiquée dans le fichier 'Homestead.yaml').

Avec votre éditeur de texte préféré, ouvrez le fichier hôte. Ce fichier se trouve dans /etc/hosts et s'exécute sous Linux et macOS. Il se trouve sous C:\Windows\System32\drivers\etc\hosts sous Windows.

Le fichier doit avoir la ligne suivante ajoutée à la fin :

 192.168.10.10 homestead.test

Modifiez 'homestead.test' en utilisant la spécification du nom de domaine du fichier 'Homestead.yaml'. Après avoir enregistré le fichier, fermez votre éditeur de texte. Maintenant que tout est configuré, vous devriez pouvoir visiter votre application Laravel en vous rendant sur « http://homestead.test » dans votre navigateur Web.

Vous aimerez peut-être : 10 raisons d'opter pour une approche de développement sans code pour le développement d'applications mobiles.

Étape 6 : Développez votre application Laravel

Développez votre application Laravel

Vous pouvez maintenant créer votre application Laravel sur Homestead exactement comme vous le feriez sur un serveur de production après son installation et son fonctionnement. Vous pouvez accéder à votre programme dans votre navigateur Web et exécuter des commandes sur le terminal tout en éditant des fichiers avec votre éditeur de texte préféré.

Votre application sera immédiatement mise à jour lorsque vous modifiez le code car elle s'exécute sur la machine virtuelle Homestead. D'autres pointeurs et conseils pour l'utilisation de Laravel Homestead sont fournis ci-dessous :

Gestion de base de données

Un serveur MySQL est créé lors de la configuration de Homestead et vous pouvez l'utiliser pour créer et gérer des bases de données pour votre application Laravel. Pour administrer vos bases de données, utilisez un programme comme phpMyAdmin. Accédez à 'http://homestead.test/phpmyadmin' dans votre navigateur Web pour afficher phpMyAdmin. Connectez-vous en utilisant le nom d'utilisateur et le mot de passe dans le fichier 'Homestead.yaml'.

Utilisation de plusieurs sites

L'ajout d'autres entrées à la partie du site du fichier Homestead.yaml peut configurer Homestead pour desservir plusieurs zones. Chaque emplacement sur la machine virtuelle Homestead doit avoir son nom de domaine distinct et son répertoire associé. L'élément suivant serait ajouté à la section des sites du « Homestead. yaml' pour créer un deuxième site avec le nom de domaine 'example.com', par exemple :

 - map: example.com
to: /home/vagrant/sites/example/public

Sur la machine virtuelle Homestead, créez le répertoire '/home/vagrant/sites/example' et transférez vos fichiers d'application Laravel dans le répertoire 'public'. Vous devez exécuter la commande 'vagrant reload —provision' après avoir modifié le fichier 'Homestead.yaml' pour que les modifications prennent effet.

Configuration Xdebug

Il est possible de déboguer du code PHP avec l'extension PHP Xdebug. Bien qu'il soit déjà pré-installé sur Homestead, Xdebug n'est pas, par défaut, activé. Ajoutez les lignes suivantes au fichier "Homestead.yaml" pour activer Xdebug :

 sites:
- map: Homestead.test
to: /home/vagrant/code/laravel/public
xdebug: true

Exécutez la commande 'vagrant reload —provision' après avoir modifié le fichier 'Homestead.yaml' pour qu'il prenne effet. Vous pouvez déboguer votre application Laravel avec un débogueur PHP comme Visual Studio Code lorsque Xdebug a été activé.

Partage de fichiers avec votre machine locale

Votre ordinateur local et les fichiers de la machine virtuelle Homestead peuvent être automatiquement synchronisés à l'aide de la commande 'vagrant rsync-auto'. Cela peut être utile si vous souhaitez utiliser un éditeur de texte ou un IDE pour modifier des fichiers sur votre ordinateur local tout en exécutant le programme sur la machine virtuelle Homestead. Accédez au répertoire '~/Homestead' et lancez la commande suivante pour utiliser 'vagrant rsync-auto' :

 vagrant rsync-auto

Après cela, une opération en arrière-plan synchronisera automatiquement les fichiers modifiés entre votre ordinateur local et la machine virtuelle Homestead.

Personnalisation de la configuration de la machine virtuelle

En modifiant le fichier 'Vagrantfile' situé dans le répertoire '~/Homestead', vous pouvez modifier la configuration de la machine virtuelle Homestead. En incluant la ligne suivante dans le 'Vagrantfile', par exemple, vous pouvez augmenter la quantité de RAM allouée à la machine virtuelle :

 config.vm.provider "virtualbox" do |vb|
vb.memory = "2048"
End

Vous devez utiliser la commande 'vagrant reload —provision' pour appliquer les changements après avoir modifié le 'Vagrantfile'.

Vous aimerez peut-être aussi : savoir si Laravel est fiable pour le développement du commerce électronique.

Conclusion

conclusion

La mise en place de Laravel Homestead pour le développement local vous a été expliquée. En suivant ces étapes, vous pouvez rapidement créer un environnement de développement fini et prêt à l'emploi pour vos applications Laravel. Vous pouvez créer et tester vos applications dans un cadre qui ressemble à celui utilisé pour la production avec Homestead, ce qui simplifie l'identification et la résolution des problèmes avant qu'ils ne surviennent en production. Pour le développement local des applications Laravel, Laravel Homestead est un outil puissant.

Vous pouvez créer rapidement un environnement de développement complet qui ressemble étroitement à l'environnement de production en suivant les procédures décrites dans cet article. Vous pouvez créer et tester vos applications en toute confiance avec Homestead, car vous savez qu'elles fonctionneront comme prévu après leur utilisation.

Auteur : Atman Rathod

Cet article est écrit par Atman Rathod. Atman est le co-fondateur de CMARIX TechnoLabs Pvt. Ltd., une société leader dans le développement d'applications Web et mobiles avec plus de 14 ans d'expérience. Il aime écrire sur la technologie, les startups, l'entrepreneuriat et les affaires. Ses capacités créatives, ses antécédents académiques et ses compétences en leadership ont également fait de lui l'un des principaux influenceurs de l'industrie.