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
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
クラウドを使う側から、作る側へ / 大吉祥寺.pm 2026前夜祭
fujiwara3
5
1.2k
プロダクト開発組織の現在地(Ver.2026/07) / product-organization
kaonavi
0
410
Webの技術とガジェットで子どもも大人も楽しめるワクワク体験を提供する / Qiita Tech Festa Day 2026
you
PRO
1
180
AI時代のPlaywright活用(システムテストを自動化する ー 実行エンジンにPla ywrightを選んだ理由)
ynisqa1988
2
950
大 AI 時代におけるC# の事情 ~ぶっちゃけトークを交えながら~
nenonaninu
0
130
AI時代の開発生産性を捉え直す — 経営と現場をつなぐ「開発組織のオブザーバビリティ」— / AI Dev Ex Conference 2026
tkyowa
1
1.3k
AI、CDK と協働する Full TypeScript アプリケーション開発 / Full TypeScript Application with AI and CDK
geekplus_tech
2
480
20260720_クラウド女子会×PyLadiesTokyoコラボ Amazon Bedrock ハンズオン用資料
yuuka51
1
110
2年前に削除したPHPクラスが、 ある日突然決済をエラーにした
ykagano
1
790
インシデント事例と パッケージの全量解析に学ぶ ソフトウェアサプライチェーンの守り方 / supply-chain-attack-defense
flatt_security
0
900
PHPで作って学ぶリアルタイム音声対話AIとWebSocket入門 by ムナカタ
munakata
0
140
非定型なドキュメントを効率よくリファクタする 〜えぇ!?仕様書27本の移行が1日で終わったって!?〜
subroh0508
2
620
Featured
See All Featured
Ethics towards AI in product and experience design
skipperchong
2
330
How GitHub (no longer) Works
holman
316
150k
The Curious Case for Waylosing
cassininazir
1
440
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
55k
Music & Morning Musume
bryan
47
7.3k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
200
First, design no harm
axbom
PRO
2
1.2k
The Pragmatic Product Professional
lauravandoore
37
7.4k
Done Done
chrislema
186
16k
Between Models and Reality
mayunak
4
380
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
2.1k
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