Upgrade to PRO for Only $50/Year—Limited-Time Offer! 🔥
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
410
Shimokita.Unity パーティクルでエフェクト
yandod
0
830
CakePHP3の明るい未来
yandod
1
260
Testing your app with Selenium on Travis CI
yandod
8
3.3k
Testing your app with Selenium on Travis CI
yandod
0
160
Inputで入力を扱う
yandod
0
690
Detonatorで爆発させる勉強会をした報告
yandod
0
2.5k
Mecanimでアニメーション - Shimokita.Unity
yandod
0
760
パリの街をUnityで駆ける
yandod
1
3.5k
Other Decks in Technology
See All in Technology
Strands Agents × インタリーブ思考 で変わるAIエージェント設計 / Strands Agents x Interleaved Thinking AI Agents
takanorig
4
1.7k
シニアソフトウェアエンジニアになるためには
kworkdev
PRO
3
210
Oracle Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
1
350
さくらのクラウド開発ふりかえり2025
kazeburo
2
190
S3を正しく理解するための内部構造の読解
nrinetcom
PRO
3
230
たまに起きる外部サービスの障害に備えたり備えなかったりする話
egmc
0
360
日本Rubyの会: これまでとこれから
snoozer05
PRO
5
220
SQLだけでマイグレーションしたい!
makki_d
0
1.2k
AI時代の新規LLMプロダクト開発: Findy Insightsを3ヶ月で立ち上げた舞台裏と振り返り
dakuon
0
390
AIBuildersDay_track_A_iidaxs
iidaxs
4
940
AWS Security Agentの紹介/introducing-aws-security-agent
tomoki10
0
380
Bedrock AgentCore Evaluationsで学ぶLLM as a judge入門
shichijoyuhi
0
110
Featured
See All Featured
Navigating Weather and Climate Data
rabernat
0
47
Build The Right Thing And Hit Your Dates
maggiecrowley
38
3k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Building the Perfect Custom Keyboard
takai
1
660
Building Adaptive Systems
keathley
44
2.9k
エンジニアに許された特別な時間の終わり
watany
105
220k
Why Our Code Smells
bkeepers
PRO
340
57k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
110
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Typedesign – Prime Four
hannesfritz
42
2.9k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
120
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
68
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
࣭ʁ