20 juillet 2015

Pourquoi et comment utiliser Laravel Homestead ?

Par Jean-Marc Amon

Laravel Homestead est :

une «boîte» officielle, un « box » pré-configuré qui vous offre un environnement merveilleux de développement sans avoir à installer PHP, de serveur web, et tout autre logiciel de serveur sur votre machine locale.

En d’autres termes, il fait automatiquement ce que nous avons l’habitude de faire auparavant manuellement via Vagrant et PuPHPet.

Donc qu’est-ce qui le rend différent de votre configuration Vaprobash / Vagrant / PuPHPet ?

vagrant-laravel

 

1. Et ça marche bien

Contrairement aux autres solutions populaires  pour simplifier les configurations de Vagrantfile, Homestead manque rarement de démarrer, et si ça arrive, le problème se règle  en quelques minutes. Si vous avez eu affaire à des solutions GUI de Vagrant , vous avez probablement remarqué combien il est rare d’obtenir tout cela et de faire fonctionner le premier vagrant up. Il ya toujours quelque chose qui ne fonctionne pas correctement.

Homestead s’installe sur Ubuntu 14.04. avec PHP 5.5, Nginx, MySQL et Postgres si vous utilisez Heroku, Node , Redis, Memcached et beanstalkd (pour toute votre mise en cache et les besoins en file d’attente), Laravel Envoy et Fabric + HipChat.

2. Il est  approuvé par Taylor Otwell

Homestead étant officielle, parce que fait par Taylor Otwell, le père de Laravel, ce qui signifie qu’il est automatiquement supposé tenir à certaines normes.

Homestead est son propre projet, appelé «l’environnement de développement local officielle », et il fera tout ce qu’il peut pour maintenir la qualité et assurer son bon fonctionnement. Rien n’est à moins, il y va de sa réputation. En PHP ces jours-ci, il n’y a pas de meilleure garantie de fiabilité à long terme d’un projet, qu’un projet détenue par une personne qui se soucie beaucoup de la qualité.

3. Facile à démarrer

Configurer Homestead n’est vraiment pas compliqué. En suivant les instructions sur la page de documentation, tout ce que vous devez faire est d’ajouter la « box » à votre Vagrant (si vous ne l’avez pas encore) et cloner le repo.

 

Après nous lançons la « box »

vagrant up

4. Les Ports

Homestead ouvre certains ports importants par défaut qui rendent le maintien et la gestion de votre base de données et autres logiciels installés sur la machine virtuelle de la machine hôte une brise. Par exemple, pour se connecter à la base de données MySQL installée avec MySQL Workbench est installé sur votre machine hôte (dans mon cas, Windows), il vous suffit de saisir les informations d’identification requises dans la fenêtre de connexion:

Les ports MySQL et Postgres défaut ont tout simplement un zéro annexé à eux (33060 pour MySQL au lieu de 3306), qui vous permet de connecter à localhost (127.0.0.1:33060) et donne accès à la DB sur la VM.

L’inconvénient potentiel pour cela est le fait que vous ne pouvez pas avoir multiple box en cours d’exécution au même moment sans changer les ports en raison des conflits. Ce serait mieux si les connexions de base de données étaient tout simplement ouvert, et l’on pouvait se connecter à l’adresse IP de la machine virtuelle comme d’habitude.

5. Meilleures pratiques et même bases

En raison du fait que Homestead est officielle, vous pouvez être assuré que vous aurez une énorme communauté disponible à tout moment pour toute assistance en la matière, si vous rencontrez des problèmes. Vous aurez le même point de départ que tout le monde en utilisant Homestead, et les problèmes seront plus facile à diagnostiquer.

6. Facile à ajouter des sites

Grâce à la simplicité du fichier de configuration on peut peaufiner Homestead. Ajouter de nouveaux sites (serveurs virtuels) est un jeu d’enfant – Plus nécéssaire de jouer les fichiers de configs et les vhost

Par défaut, le fichier Homestead.yaml enregistre un seul serveur virtuel appelé « homestead.app »  qui est accessible par défaut. Vous pouvez y accéder directement en allant à l’adresse IP de la machine virtuelle dans votre navigateur, sur le port 80 : . Cependant, vous voudrez peut-être avoir des applications ou des projets supplémentaires en cours d’exécution avec le nom du projet directement accessible via le navigateur. Voilà où le bloc « sites » :

sites:
    - map: homestead.app
      to: /home/vagrant/Code/Laravel/public
    - map: homestead2.app
      to: /home/vagrant/Code/H2/public

Ajoutez ensuite ces noms de domaines a votre hosts comme ceci

192.168.10.10 homestaed.app
192.168.10.10 homestead2.app

Cette procédure vous permet d’ajouter autant de serveurs virtuels à votre VM que vous le souhaitez, de servir de multiples projets à partir d’une seule box au besoin.

Source : sitepoint.com