Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Vagrant - Team development made easy
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Marco Silva
November 16, 2012
Technology
1
1.1k
Vagrant - Team development made easy
Development environment using Vagrant. Presented at Codebits2012
Marco Silva
November 16, 2012
Tweet
Share
Other Decks in Technology
See All in Technology
Phase08_クイックウィン実装
overflowinc
0
1.7k
ThetaOS - A Mythical Machine comes Alive
aslander
0
180
「AIエージェントで変わる開発プロセス―レビューボトルネックからの脱却」
lycorptech_jp
PRO
0
120
AgentCoreとLINEを使った飲食店おすすめアプリを作ってみた
yakumo
2
240
Bill One 開発エンジニア 紹介資料
sansan33
PRO
5
18k
開発チームとQAエンジニアの新しい協業モデル -年末調整開発チームで実践する【QAリード施策】-
qa
0
290
スケールアップ企業でQA組織が機能し続けるための組織設計と仕組み〜ボトムアップとトップダウンを両輪としたアプローチ〜
qa
0
280
非同期・イベント駆動処理の分散トレーシングの繋げ方
ichikawaken
1
110
Physical AI on AWS リファレンスアーキテクチャ / Physical AI on AWS Reference Architecture
aws_shota
1
130
How to install a gem
indirect
0
1.5k
Kiro Meetup #7 Kiro アップデート (2025/12/15〜2026/3/20)
katzueno
2
250
LLMに何を任せ、何を任せないか
cap120
10
5.5k
Featured
See All Featured
Winning Ecommerce Organic Search in an AI Era - #searchnstuff2025
aleyda
1
1.9k
Between Models and Reality
mayunak
2
240
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
10k
30 Presentation Tips
portentint
PRO
1
260
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
230
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
270
Reality Check: Gamification 10 Years Later
codingconduct
0
2.1k
The Spectacular Lies of Maps
axbom
PRO
1
640
GraphQLとの向き合い方2022年版
quramy
50
14k
Rails Girls Zürich Keynote
gr2m
96
14k
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
Transcript
Vagrant Team development made easy
Me Technical Leader @Centralway Before? Intraneia • Open-Source, Ubuntu Deloitte
• IT Audits, Security & Privacy
How do we develop..
MySQL Apache2 Python PEAR RVM npm nginx PostgreSQL PHP Ruby
RoR MongoDB .... ??? Local development environment
Local development environment No Isolation Not Shareable Not Repeatable
Alternative? Virtual Machines
Vagrant Free and open source Started on January 21, 2010
by Mitchell Hashimoto and John Bender. The first release, 0.1.0 released on March 7, 2010. Linux, Mac OS X, and Windows
Vision The vision of the project is to create a
tool to transparently manage all the complex parts of modern development within a virtual environment without affecting the everyday workflow of the developer too much.
Vagrant ~12000 lines of Ruby ~3500 : test code ~5500
: "plugins" ~3300 : core Thats a lot of code!!!
None
Script must... Import a virtual machine setup host only networking
setup shared folders boots the machine provision the machine support Mac, Linux, and Windows guest additions NFS
and how do we use it?
the basic way #Fetch the Box $ vagrant box add
base http://files.vagrantup.com/precise32.box #Init Vagrant on your current folder $ vagrant init #Start it!! $ vagrant up
with various projects...
None
Vagrantfile Vagrant::Config.run do |config| config.vm.box = "debian" config.vm.box_url = "http://path/to/vagrantbox.box"
config.vm.network :hostonly, "10.10.10.10", :adapter=>4 config.vm.customize ["modifyvm", :id, "--memory", "512"] end
Vagrantfile Vagrant::Config.run do |config| config.vm.box = "debian" config.vm.box_url = "http://path/to/vagrantbox.box"
config.vm.network :hostonly, "10.10.10.10", :adapter=>4 config.vm.customize ["modifyvm", :id, "--memory", "512"] config.vm.provision :puppet do |puppet| puppet.manifests_path = "vagrant/puppet/manifests" puppet.manifest_file = "base.pp" end config.vm.provision :shell, :inline => "/bin/bash /vagrant/myscript.sh" end
Vagrantfile Vagrant::Config.run do |config| config.vm.box = "debian" config.vm.box_url = "http://path/to/vagrantbox.box"
config.vm.network :hostonly, "10.10.10.10", :adapter=>4 config.vm.customize ["modifyvm", :id, "--memory", "512"] config.vm.provision :puppet do |puppet| puppet.manifests_path = "vagrant/puppet/manifests" puppet.manifest_file = "base.pp" end config.vm.provision :shell, :inline => "/bin/bash /vagrant/myscript.sh" end
Demo time....
important vagrant commands vagrant up vagrant provision vagrant suspend vagrant
halt vagrant destroy
tips shared folders vs NFS golden box vs clean box
similar environments -> helps deployments Multi-VM Environments http://vagrantup.com/v1/docs/multivm.html
tips veewee • github.com/jedi4ever/veewee puppet / chef
Thank You vagrantup.com vagrantbox.es github.com/igama/wp-vagrant-demo