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 + Berkshelf
Search
Yusuke Ando
November 12, 2013
Technology
9
6k
Vagrant + Berkshelf
Yusuke Ando
November 12, 2013
Tweet
Share
More Decks by Yusuke Ando
See All by Yusuke Ando
CakePHP3でアプリ開発
yandod
1
380
Shimokita.Unity パーティクルでエフェクト
yandod
0
800
CakePHP3の明るい未来
yandod
1
240
Testing your app with Selenium on Travis CI
yandod
8
3.2k
Testing your app with Selenium on Travis CI
yandod
0
140
Inputで入力を扱う
yandod
0
680
Detonatorで爆発させる勉強会をした報告
yandod
0
2.4k
Mecanimでアニメーション - Shimokita.Unity
yandod
0
740
パリの街をUnityで駆ける
yandod
1
3.4k
Other Decks in Technology
See All in Technology
Beyond Kaniko: Navigating Unprivileged Container Image Creation
f30
0
130
Glacierだからってコストあきらめてない? / JAWS Meet Glacier Cost
taishin
1
160
DatabricksにOLTPデータベース『Lakebase』がやってきた!
inoutk
0
110
OPENLOGI Company Profile
hr01
0
67k
品質と速度の両立:生成AI時代の品質保証アプローチ
odasho
1
360
AWS Organizations 新機能!マルチパーティ承認の紹介
yhana
1
280
2025-07-06 QGIS初級ハンズオン「はじめてのQGIS」
kou_kita
0
170
成長し続けるアプリのためのテストと設計の関係、そして意思決定の記録。
sansantech
PRO
0
120
United airlines®️ USA Contact Numbers: Complete 2025 Support Guide
unitedflyhelp
0
310
Flutter向けPDFビューア、pdfrxのpdfium WASM対応について
espresso3389
0
130
SEQUENCE object comparison - db tech showcase 2025 LT2
nori_shinoda
0
150
さくらのIaaS基盤のモニタリングとOpenTelemetry/OSC Hokkaido 2025
fujiwara3
3
450
Featured
See All Featured
A Tale of Four Properties
chriscoyier
160
23k
Why You Should Never Use an ORM
jnunemaker
PRO
58
9.4k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
45
7.5k
What's in a price? How to price your products and services
michaelherold
246
12k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
31
1.3k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Visualization
eitanlees
146
16k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
26k
KATA
mclloyd
30
14k
Designing for Performance
lara
610
69k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3.1k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Transcript
OBOBQJ!ZBOEP 7BHSBOUͰ/HJOYQIQGQN $IFGͱࠜؾͱ#FSLTIFMG
ZBOEP $BOEZ$BOFQIQ $BLF1)1࣮ફೖ
UFDIBMJTUFSTKQ
1)13VCZ/PEF+BWBରԠ1BB4 $IFGͰ"84ɺ"[VSFΛࣗಈߏங ࣌ؒ༗ਓࢹ 44)TVEPՄೳ͔ͭαϙʔτ༗ εϥΠυͳͲˠ GBDFCPPLDPNFZKBQBO
$IFGͷϔϏʔϢʔβʔ
։ൃڥ ୭ͰඞཁʹͳΔ ଟ࠼ ͗͢Δ ڥ 9".1 .".1 7JSUVBM#PY TZTUFN1)1 ࣮ڥͱԿ͔͕ҧ͏
શ͘ҧ͏
ͦ͜Ͱ7BHSBOU
7BHSBOU ։ൃڥߏஙπʔϧ 7BHSBOUͱ7JSUVBM#PYͷηοτΞοϓ ఆٛϑΝΠϧΛςΩετͰهड़ WBHSBOUVQͰ։ൃڥ͕ىಈ
WBHSBOUVQ Vagrantfile VirtualBox Chef Solo Cookbook ಡΈࠐΈ ىಈ ࣗಈઃఆ ಡΈࠐΈ
ΩοΫ
͍͢͝ ϑΝΠϧ͚ͩͰಉ͡ڥΛ࠶ݱ ςΩετͳͷͰࠩཧͰ͖Δ ͖ͳ*%&ͰΰϦΰϦฤूͰ͖Δ $IFGͷDPPLCPPLΛຊ൪ʹྲྀ༻Ͱ͖Δ ศར͔ͭɺຊͷڥ͕͑Δ
Πϯετʔϧ HFNͰͷΠϯετʔϧඇਪ
5JQT3VCZJO7BHSBOU 7BHSBOUҎ߱3VCZΛಉ͍ࠝͯ͠Δ
WBHSBOUCPY ։ൃڥͷϕʔεʹ͢ΔΠϝʔδ IUUQXXXWBHSBOUCPYFT WBHSBOUCPYBEE\UJUMF^\VSM^ %SPQ#PYͰެ։͢Δͱࢮ͵
None
WBHSBOUJOJU 7BHSBOUpMFΛੜ ϓϩδΣΫτԼͳͲ͕ྑ͍ IPNFʹ࡞Βͳ͍΄͏͕ྑ͍ http://bit.ly/php-vagrant
Vagrant.configure("2") do |config| config.vm.box = "base" config.vm.box_url = "http://dom.com/ a.box"
end
WBHSBOUVQ 7BHSBOUpMFΛݩʹϚγϯΛىಈ WBHSBOUTTIͰTTIͰϩάΠϯՄೳ JEQBTTͷཧෆཁʂ ͜ͷ··ͩͱૉͷΠϝʔδ
DPOpHWNTZODFE@GPMEFS 1$ଆͷϑΥϧμΛ7.ʹϚϯτ υΩϡϝϯτϧʔτʹιʔεΛʂ *%&Ͱฤूͨ͠༰͕ଈ࣌ө GUQɺTDQHJU͕ແͯ͘େৎ
ͦͷଞ DPOpHWNOFUXPSL /"5ઃఆͳͲͷࣗಈԽ WCDVTUPNJ[F ϝϞϦׂΓͯͳͲ ϓϥάΠϯ ଞͷԾԽΫϥυΛར༻Մೳ
DPOpHWNQSPWJTJPO ىಈͨ͠Ϛγϯͷߏஙઃఆ $IFGTPMP 1VQQFU$'&OHJOF4IFMM"OTJCMFՄೳ ΫοΫϒοΫͷύεΛهड़
config.vm.provision :chef_solo do |chef| chef.cookbooks_path = "../my-recipes/cookbooks" chef.add_recipe "mysql" end
$IFG େྲྀߦͷߏஙπʔϧ ϨγϐΛهड़ͯ͠ߏங ωοτ্ʹใ͕ଟ͍ ߚനग़ܾఆڃͷώοτ
package “nginx” template “/etc/nginx/nginx.conf” do source “nginx.conf.erb” end service “nginx”
do action :start end SFDJQF Πϯετʔϧ ઃఆϑΝΠϧίϐʔ αʔϏε։࢝
ཧܗ Vagrantfile Cookbook Ϋϥυ ։ൃڥ ຊ൪ڥ $PPLCPPLͰ։ൃڥͱຊ൪ڥΛಉظ
5*14ΫοΫϒοΫΔ ͦΕ·Ͱಈ͍͍ͯͨΫοΫϒοΫ ͋Δ͔࣌Βಈ͔ͳ͘ͳΔ ύοέʔδͷΞοϓσʔτͳͲ ܧଓతͳϝϯςφϯε͕͔ܽͤͳ͍
Node Node GitHub engineyard.com Node &OHJOF:BSEͷ߹ DIFGTPMP Cookbook BQQMZ &OHJOF:BSE͕࣮ͨ͠Ϩγϐ
Λ8FCͷૢ࡞Ͱඞཁͳ࣌ʹө ΧελϜϨγϐ
ಥવͷ੬ऑੑରԠ
੬ऑੑରԠͳͲΛਵ࣌৴
͜͜·Ͱ Ҏલ͓͠·ͨ͠
7BHSBOU $IFGͷ՝ 7BHSBOUpMFͱผʹΫοΫϒοΫ͕ඞཁ DPPLCPPLTͷॴΛࢦఆ ෳͷΞϓϦͰڞ༻͢Δ࣌ ΫοΫϒοΫෆఆظͰϝϯς͕ඞཁ
ΫοΫϒοΫڞ༗ Vagrantfile Cookbook App1 Vagrantfile App2 Vagrantfile App3
ZBOEPEPNVTVCJ QIQGQNOHJOYͳ ։ൃڥ༻Ϩγϐ
PNVTVCJ 6CVOUVϕʔε εΫϥονͰॻ͍ͨΫοΫϒοΫ QIQ/HJOY$PNQPTFSQIQVOJU NZTRMQPTUHSFTRMJNBHFNBHJDL ඞཁ͔ͩͬͨΒॻ͍ͨϨγϐ
ਖ਼߈๏Ϩγϐಉࠝ
ਖ਼߈๏TVCNPEVMFTVCUSFF
ࠇຐज़DIFGTPMPS ϦϞʔτͷUBSϘʔϧΛల։࣮ͯ͠ߦ
ଥڠશ෦4IFMM ͞ΑͳΒႈੑ
ͲΕ͍·͍ͪ Oճͷϝϯς͕ඞཁ
ͦ͜Ͱ#FSLTIFMG
#FSLTIFMG 3JPU(BNFT $PPLCPPLͷґଘཧπʔϧ CVOEMFSతͳࣄ͕ग़དྷΔ CFSLTJOTUBMMͰ#FSLTpMFΛݩʹऩू ίϛϡχςΟΫοΫϒοΫҎ֎0,
-PDBUJPO
#FSLTIFMGͳΒ ࣗ࡞ͷΫοΫϒοΫΛ֎෦͔Βಋೖ ϓϥΠϕʔτϦϙδτϦ0, 0QT$PEFͱซ༻Մೳ 7BHSBOU#FSLTIFMGϓϥάΠϯͰશࣗಈ
શࣗಈ WBHSBOUQMVHJOJOTUBMMWBHSBOUCFSLTIFMG DPOpHCFSLTIFMGFOBCMFUSVF CFSLTίϚϯυΛ৮Δඞཁແ͠ʂ
#FSLTpMF
7BHSBOUpMF #FSLTGJMFͰऔಘͨ͠ ϨγϐΛࢦఆՄೳʹ
͞Βʹຐվ #FSLTGJMFΛ7BHSBOUGJMF ʹଂͤͯ͞ݟͨ
ҙ ར༻ऀʹ7BHSBOU#FSLTIFMGϓϥάΠϯ ΫοΫϒοΫʹNFUBEBUBSC͕ඞཁ UFTULJUDIFOͳͲͰςετ͕ඞཁ
αϯϓϧ HJUIVCDPNZBOEPEPNVTVCJ HJTUHJUIVCDPNZBOEPE
࣭ʁ