Todo desenvolvedor Web deve garantir que seu código funcione, seja muito bem compreensível e adaptável, mas não para aí. Um dos grandes desafios é fazer com que o nosso código não apresente problemas em ambiente de produção. Muito desse problema ocorre porque o ambiente do desenvolvedor costuma ser muito diferente do de produção, uma ocorrência muito comum é quando o desenvolvedor utiliza Windows para desenvolver mas a aplicação em produção roda em Linux.
O Vagrant é uma ferramenta que atua em conjunto com sistemas de virtualização como: Virtualbox, VMware entre outros, e tem o intuito de trabalhar em ambiente virtualizado, chegando a ficar muito similar ao de produção (quando não acontece de ser o mesmo).
O Homestead é uma ferramenta escrita para automatizar algumas configurações do Vagrant, ele é disponibilizado pelos desenvolvedores do Laravel e o seu objetivo, além de facilitar o trabalho, é o de padronizar o ambiente PHP de forma que possamos trabalhar com as ferramentas mais comuns usadas pelos desenvolvedores em seus projetos.
É importante saber que o Homestead não é apenas limitado ao Framework Laravel e muito menos ao sistema operacional Windows. Ele pode ser configurado em sistemas Unix também.
Pré-config
Antes de darmos continuidade, para que o Homestead/Vagrant/VirtualBox funcionem, precisamos habilitar a virtualização em sua CPU pela BIOS, esse link explica o processo, tanto para processadores Intel quanto para AMD.
Hands on
Veja no vídeo abaixo o passo a passo sobre como instalar e configurar o Homestead no Windows: