Usando Vagrant como ambiente de desenvolvimento Ruby

Usando Vagrant como ambiente de desenvolvimento Ruby

Uma das grandes dificuldades em qualquer plataforma de desenvolvimento é manter um ambiente conciso, principalmente quando o seu time possui muitos desenvolvedores. Junte isso à diferença entre o sistema operacional do desenvolvedor com arquiteturas diferentes, bibliotecas utilizadas com extensões nativas e a probabilidade de dar algo errado em produção aumenta muito! Veja como o Vagrant pode resolver todos esses problemas e ainda servir como uma plataforma de testes para scripts de configuração de servidores usando máquinas virtuais.

Palestra apresentada na RubyConf 2013

Cb5d9e9095cd41b636764a85e57ade4b?s=128

Nando Vieira

August 31, 2013
Tweet

Transcript

  1. 4.
  2. 5.
  3. 6.
  4. 10.

    O que você faz quando está em uma plataforma Windows

    e precisa usar ferramentas que só funcionam em ambientes *nix?
  5. 14.

    Em um mundo perfeito, você poderia apenas pe ar uma

    cópia do seu projeto e executá-la.
  6. 30.
  7. 37.
  8. 39.
  9. 54.
  10. 60.

    Vagrant.configure("2") do |config| config.vm.box = "precise64" config.vm.provision :puppet do |puppet|

    puppet.manifests_path = "manifests" puppet.manifest_file = "init.pp" end end
  11. 65.

    Vagrant.configure("2") do |config| config.vm.define :filesystem do |fs| fs.vm.box = "precise64"

    fs.vm.network :hostonly, "192.168.2.100" end config.vm.define :gitserver do |git| git.vm.box = "precise64" git.vm.network :hostonly, "192.168.2.101" end end
  12. 71.

    Vagrant.configure("2") do |config| config.vm.box = "precise64" forward_port = -> guest_port,

    host_port = guest_port { config.vm.network :forwarded_port, guest: guest_port, host: host_port } forward_port[3000] # rails forward_port[9292] # rack forward_port[4567] # sinatra forward_port[3306] # mysql forward_port[5432] # postgresql forward_port[6379] # redis forward_port[80, 8080] # nginx/apache end
  13. 72.

    Com o Va rant, cada projeto possui confi urações e

    dependências específicas, totalmente isoladas.
  14. 75.

    Mac OS X *NIX Windows Desenvolvimento Produção Estatísticas Ambiente de

    desenvolvimento versus ambiente de produção* *Estatísticas inventadas, mas com um fundo de verdade. Mac OS X *NIX Windows
  15. 84.