DESENVOLVIMENTO PHP COM VAGRANT Rogério Prado de Jesus PHP Conference Brasil Novembro 2012
Jun 11, 2015
DESENVOLVIMENTO PHP COM VAGRANT
Rogério Prado de JesusPHP Conference Brasil
Novembro 2012
QUEM SOU EU?
•@rogeriopradoj - Rogério Prado de Jesus
• PHP desde 2009
• blog: rogeriopradoj.com
• Grupo de usuários:
@duodraco
http://duodra.co/post/desenvolvimento-php-usando-maquinas-virtuais-fastcgi-fpm/
Escreveu artigo muito interessante...
...que infelizmente não funcionou para mim, nem para alguns outros leitores...
http://duodra.co/post/desenvolvimento-php-usando-maquinas-virtuais-fastcgi-fpm/#comment-691173561
sigam esse cara! sigam esse grupo!
EVOLUÇÃO DO AMBIENTE DESENVOLVIMENTO
não sabe que pode separar os ambientes...
desenvolve direto em produção...
grande chance de quebrar o sistema enquanto o cliente
está usando...
“me passa a senha do FTP que já
corrijo lá...”
EVOLUÇÃO DO AMBIENTE DESENVOLVIMENTO
aprende que pode separar a produção do desenvolvimento...
instala os softwares no próprio computador...
pacotes facilitam:XAMPP, WAMP, MAMP...
EVOLUÇÃO DO AMBIENTE DESENVOLVIMENTO
computador começa a ficar lento...
projetos diferentes exigem softwares diferentes... para não faltar nada,
tudo é instalado...
conflitos entre diferentes versões...
QUEM NUNCA?
Ou você fez um sistema baseado nas Web standards,
e o cliente usa IE6...
... ou o sistema só funciona no seu ambiente!
Pode ocorrer tanto na produção...
...quanto com seus colegas de desenvolvimento...
...se esses ambientes forem divergenteshttp://vidadesuporte.com.br/
EVOLUÇÃO DO AMBIENTE DESENVOLVIMENTO
É aí que entra a virtualização!!!
VIRTUALIZAÇÃO
Elimina os conflitos
Permite criar
ambientes...
...leves......reproduzíveis... ... e portatéis!
VIRTUALIZAÇÃOBaseada em
3 pilares:
Hardware
Sistema Operacional
Softwares
VIRTUALIZAÇÃO
Exemplo de umaVM com 21GB
Manualmente ainda é trabalhoso...
... ter que tomar TODAS as decisões dos 3 pilares da VM (HW, SO e SWs)...
... é portátil, mas nem tanto...
VAGRANT
• Ferramenta para agilizar configuração de seu ambiente de desenvolvimento
• Baseado em Virtualização
Aí que entra o Vagrant!
É possível instalar noWindows, Mac, Linux, BSD...
VAGRANT
•Oracle VirtualBox (Boxes)
• Provisionamento (configuração e instalação)
• Puppet
• Chef
•Melhora a paridade entre os ambientes dev e prod
Junta a configuração do HW e do SO
Automatiza ainstalação/configuração dos SWs
Ideal da VM, agora muito mais simples
VAGRANT: COMO?•Oracle VirtualBox (Boxes)
lista mantida pela comunidade
prontas para usar
VAGRANT: COMO?• Puppet e Chef
Busquem o máximo aquiUm pouco
aqui
Dois brasileiros que sabem muito! (já tem
muitos outros, é que eles começaram)
Lista oficial de provisionamento PuppetLista oficial de
provisionamento Chef
COMANDOS
• vagrant --help
• vagrant init
• vagrant up
Lista todos ossubcomandos
Cria um arquivo Vagrantfile na pasta
Vagrantfile é o arquivo que define configuração projeto
“Sobe” o ambiente com as definições
do VagrantfileProvavelmente o
comando mais usado ;-)
nesse slide só tem alguns
DEMO
https://github.com/rogeriopradoj/vagrant-php-dev-box
https://github.com/rogeriopradoj/vagrant-basic-chef
https://github.com/iMastersDev/oportunidades
Garoto propaganda do Vagrant
Exemplos de Vagrantfiles
QUEM USA
Eu também...
...+ um monte de gente na
PHP Conf 2012 e na comunidade!
E você?!
MAIS?
http://friendsofvagrant.github.com/
http://vagrant.rogeriopradoj.com/
http://vagrantup.com/
Documentação oficial
Início tradução pt_BR
Tradução pt_BRda documentação oficial
pela comunidade
obsoleto
Usem
vocês também podem ajudar!!!Ativo!!!
REFERÊNCIAS
• https://joind.in/talk/view/7734
• http://www.phpconference.com.br/presentations/show/id/98
• http://duodra.co/post/desenvolvimento-php-usando-maquinas-virtuais-fastcgi-fpm/
• http://vagrantup.com/
• http://www.vagrantbox.es/
• https://github.com/EHER/my-puppet
• http://eltonminetto.net/2012/04/02/usando-o-vagrant-para-criar-maquinas-virtuais-para-desenvolvimento-e-testes/
• https://github.com/opscode-cookbooks
• http://forge.puppetlabs.com/
• https://github.com/rogeriopradoj/vagrant-basic-chef
• https://github.com/rogeriopradoj/vagrant-php-dev-box
• https://github.com/iMastersDev/oportunidades
• http://vagrant.rogeriopradoj.com/
• http://friendsofvagrant.github.com/
• http://rogeriopradoj.com/
• http://about.me/rogeriopradoj