Diese Präsentation wurde erfolgreich gemeldet.
Die SlideShare-Präsentation wird heruntergeladen. ×

Vagrant from zero to VM

Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige
Anzeige

Hier ansehen

1 von 23 Anzeige

Weitere Verwandte Inhalte

Andere mochten auch (20)

Anzeige

Ähnlich wie Vagrant from zero to VM (20)

Vagrant from zero to VM

  1. 1. Vagrant from zero to VM (in seconds) antonio.pessolano@gmail.com @apessolano
  2. 2. Chi sono SysAdmin in ambiente M$ dal 2000 al 2004 Web developer dal 2004 (più o meno) Senior developer @ More info: http://www.linkedin.com/in/antoniopessolano
  3. 3. PerchèVagrant? Prima di tutto...
  4. 4. Qualche anno fa
  5. 5. Oggi
  6. 6. “Keep development, staging and production as similar as possible” http://12factor.net Dev/Prod Parity
  7. 7. Problemi principali • Switchare tra diversi progetti non è semplice • Il setup dei pacchetti richiesti per ogni progetto non è sempre immediato • L’ambiente di sviluppo rischia di divergere troppo da quello di produzione
  8. 8. La soluzione?
  9. 9. Installazione Le fondamenta
  10. 10. Installazione https://www.virtualbox.org/wiki/Downloads
  11. 11. Installazione http://downloads.vagrantup.com/ 1. Seleziono la versione che mi interessa 2. successivamente il sistema operativo che intendo utilizzare
  12. 12. I componenti Come funziona?
  13. 13. Providers Offrono la possibilità di gestire: • CPU e RAM • Networking • Storage Dalla versione 1.1.*:Virtualbox,VMWare, AWS, DigitalOcean, ecc.
  14. 14. Box Lo scheletro a partire dal qualeVagrant costruisce le virtual machine. • Le box sono dipendenti dal provider specificato. • Meccanismo per limitare il tempo di bootstrap di una VM vagrant box add [label] [uri] vagrant box add precise64 http://file.vagrantup.com/precise64.box
  15. 15. Provisioning Permette di: • Permette di installare software, modificare le configurazioni. • Permette di rendere ripetibile e ridistribuibile la VM. Vagrant offre diverse soluzioni di provisioning. Tra queste: Shell Script, Chef, Puppet, ecc.
  16. 16. Comandi principali vagrant  box  <command>  <args> vagrant  box  add  <name>  <url>  [-­‐-­‐provider  provider] vagrant  box  list vagrant  box  remove  <name>  <provider> vagrant  box  repackage  <name>  <provider>
  17. 17. Comandi principali vagrant  up vagrant  ssh vagrant  halt vagrant  suspend vagrant  destroy lanciare la macchina virtuale effettua il login via ssh allaVM spegne la vm (senza cancellare i file) Salva lo stato della vm e la spegne. Permette un riavvio più rapido distrugge completamente la VM eliminando tutti i file
  18. 18. Tutto chiaro?!
  19. 19. Vagrantfile Andiamo al sodo...
  20. 20. La mia primaVM Vagrant.configure("2") do |config| config.vm.box = "precise64" config.vm.synced_folder "project", "/vagrant" config.vm.network :forwarded_port, guest:80, host: 8080 config.vm.provider :virtualbox do |vb| vb.gui = false vb.customize ["modifyvm", :id, "--memory", "1024"] end config.vm.provision :shell, :path => "provision.sh" end https://gist.github.com/apessolano/6360194
  21. 21. Live demo Facciamo qualcosa?
  22. 22. Links Vagrant: Up and running Mitchel Hashimoto O’Reilly http://shop.oreilly.com/product/0636920026358.do Vagrant Docs http://docs.vagrantup.com/v2/ Vagrant on Twitter https://twitter.com/mitchellh https://twitter.com/vagrantup https://twitter.com/hashicorp Services https://puphpet.com/ http://rove.io/ Esempi https://gist.github.com/apessolano/6360194 https://gist.github.com/apessolano/6360643 https://gist.github.com/apessolano/6360832
  23. 23. Grazie! antonio.pessolano@gmail.com @apessolano Antonio Pessolano Immagini utilizzate: http://www.hashicorp.com/images/blog/a-new-look-for-vagrant/logo-8b7a4912.png http://soloconlamiatesta.files.wordpress.com/2012/10/scimmiapensante.jpg http://cdn.iovideogioco.com/wp-content/uploads/2009/04/lego.jpg http://andreazanini.altervista.org/wp-content/uploads/2013/04/auto-in-pezzi-parti-esploso.jpg http://ilsileno.it/wp-content/uploads/2012/03/stupore.jpg http://www.pontos-news.gr/files/3_avga_diakosmisi_pasxa_616793647.jpg

×