Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
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.1k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Vagrant - Team development made easy
Development environment using Vagrant. Presented at Codebits2012
Marco Silva
November 16, 2012
Other Decks in Technology
See All in Technology
触りたくないデータに、どう触るか AI時代のRBACアクセスガバナンス
ivry_presentationmaterials
0
260
DGX Spark でどこまでハッキングができるのか?
kash1064
3
1.3k
PHPカンファレンス関西の招待状 / Invitation to PHP Conference Kansai
ykanoh
0
110
Temporal 最高!でも改めて「日付」について調べたら人類の負債すぎる件
riyaamemiya
0
140
NDIでApple Vision Proにリアルタイム映像送信
jyouryuusui
0
120
UniFi(ユニファイ)AIカメラの現場活用
ludicmind
1
440
Kiro Crewをはじめよう
kizawa2020
1
160
Post AI時代のリファクタリング実践記 / Refactoring in the post AI era
kaminashi
1
230
ストレスなくAIと付き合いたい!こんなときどうしてる?
namiki64
3
490
今さら理解するウェブフォントver.2026
takanorip
3
770
子育てエンジニアの可処分時間が減っても成長を諦めない戦い方
sudoakiy
6
4.6k
20261017福岡devIO 「AIは"良いダッシュボード"を作れるか?
jtakeda
0
140
Featured
See All Featured
The Invisible Side of Design
smashingmag
301
52k
Crafting Experiences
bethany
1
380
Paper Plane
katiecoart
PRO
5
54k
ラッコキーワード サービス紹介資料
rakko
1
5.3M
Exploring anti-patterns in Rails
aemeredith
4
540
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
430
Tell your own story through comics
letsgokoyo
1
1.1k
Being A Developer After 40
akosma
92
590k
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
12k
Into the Great Unknown - MozCon
thekraken
41
2.8k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
68
59k
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