「チーム開発において、効率的な統合的な開発環境をいかに作るか」
)PXUP#VJME&GpDJFOUBOE*OUFHSBUFE%FWFMPQNFOU&OWJSPONFOUGPS5IF5FBN1)1$POGFSFODF+BQBO!TPUBSPL.FSDBSJ *OD
View Slide
νʔϜͷͨΊͷޮతͰ౷Ұతͳ։ൃڥͷ࡞Γํ˞ຊൃදଟຊޠͰ͢1)1$POGFSFODF+BQBO!TPUBSPL.FSDBSJ *OD
!TPUBSPL
!TPUBSPL4PUBSP,BSBTBXB.FSDBSJ *OD
.FSDBSJ *OD
.FSDBSJ *OD%-. 64+1ग़%BJMZ,ߪೖ.POUIMZ.+1:
.FSDBSJ *OD$IFDLPVUPVSCMPHIUUQUFDINFSDBSJDPN
2)PXNBOZFOHJOFFSTJOZPVSUFBN ʙਓʙਓʙਓਓʙ
.FSDBSJ *ODw &OHJOFFSTw 0DUਓऑw 0DUਓऑw 0DUਓऑଟ
%FWFMPQNFOU&OWJSPONFOU։ൃڥ
ͳͥʠ༰қʹߏஙՄೳͳ։ൃڥΛ༻ҙ͖͢ͳͷ͔
ۀظਓਓʙਓͱ͔ͦΕͧΕ͕ͦΕͧΕదʹ։ൃͯ͠Δɻܾ·ͬͯΔͷ͏ݴޠͱ%#ɾ8FCαʔόʔ͘Β͍
ظਓਓʙͦΕͧΕ͕ͦΕͧΕͷʜYਓ ϥΠϒϥϦ ݴޠ ϛυϧΣΞ ίϯϙωϯτ
ظਓਓʙͦΕͧΕ͕ͦΕͧΕͷʜYਓ ϥΠϒϥϦ ݴޠ ϛυϧΣΞ ίϯϙωϯτ৽ਓϛ
w ཧͰ͖ͳ͍w ૿͑ΔϛυϧΣΞɾιϑτΣΞʹϝϯόʔ͕ैͰ͖ͳ͍w ৽ਓ͕Ͳ͏ͬͯ։ൃΛ࢝ΊΔͷ͔͕Θ͔Βͳ͍
5SBJOJOHڭҭʹ͍ͭͯ
༏लͳਓͷଗ͏νʔϜ͔ͩΒڭҭͱ͔͍Βͳ͍
ͱʹ͔͘։ൃ͕ॏཁ͔ͩΒڭҭͯ͠ΔՋͳ͍
Α͋͘Δؒҧ͍✘
༏लͳਓͷଗ͏νʔϜʹͦ͜ɺڭҭॏཁw ༏लͳਓΛ͍͔ʹૣ͘ϓϩμΫτͰ׆༂ͤ͞Δ͔w ৫ͷʹඋ͑Δw ϑΣʔζʹΑΔঢ়گͷมԽΛ࣮֬ʹଊ͑ͳ͕Β
։ൃڥߏஙʹؔ͢ΔΑΓ۩ମతͳ
$PNNPO%FWFMPQNFOU4FSWFS/var/www/vhosts/dev1.example.com/var/www/vhosts/dev2.example.com/var/www/vhosts/dev3.example.com/var/www/vhosts/dev4.example.com...
*OEJWJEVBM%FWFMPQNFOU4FSWFS3FDJQFEFCSQN
-PDBM
PUUP
ϝϧΧϦͷ߹w 7JSUVBM#PY7BHSBOUw ֤छϛυϧΣΞΛηοτΞοϓࡁΈͷ#PYΛ #PY4ʹ͓͍ͯΔw ιʔείʔυ.BD্ʹɻ TZODFE@GPMEFS
ϝϧΧϦͷ߹$ git clone http://…/mercari-dev.git$ cd mercari-dev$ make
ϝϧΧϦͷ߹config.vm.box_url= "https://s3-ap-northeast-1.amazonaws.com/.../mercari-dev/catalog.json"
#PYͮ͘ΓͷΞϨίϨw σΟϨΫτϦߏΛຊ൪ͱଗ͑Δw ͢Δ7.ࣗମͷϓϩϏδϣχϯάΛBOTJCMFͰw WFFXFFͰϏϧυw NBLFίϚϯυൃͰϏϧυˠΧλϩάͷΞοϓϩʔυw FYQFSJNFOUBMCVJMEΛఏڙͯ͠ಈ࡞֬ೝޙ൛࡞
-PDBMͷΈw 2"νʔϜͱͷΓͱΓw ΫϥΠΞϯτ "OESPJEJ04ͱͷΓͱΓw 44-Ͳ͏͠Α͏w ՈͰΔͱ͖ࠔΔ
ϝϧΧϦͷ߹$ make dns
IPTUTΛॻ͖͑ΒΕͳ͍͔ΒΞΫηεͰ͖ͯخ͍͠10.0.1.12 api-sotarok-jp.dev.example.com10.0.1.12 api-sotarok-us.dev.example.com10.0.1.12 www-sotarok-jp.dev.example.com10.0.1.12 www-sotarok-us.dev.example.com10.0.1.12 …
ϋΠϑϯͰ໊લΛ࡞ΔEFWFYBNQMFDPN10.0.1.12 api-sotarok-jp.dev.example.com10.0.1.12 api-sotarok-us.dev.example.com10.0.1.12 www-sotarok-jp.dev.example.com10.0.1.12 www-sotarok-us.dev.example.com10.0.1.12 …8JME$BSE44-
%BUBCBTF4FSWFS
$PNNPO%BUBCBTF4FSWFSDEV DBDev ServerDev ServerDev Server
։ൃڥͷσʔλΛͰ͖Δ͚ͩຊ൪ʹ͚ۙͮΔIUUQUFDIMJGFDPPLQBEDPNFOUSZ
ϝϧΧϦͷ߹w -PDBMʹ։ൃڥΛͬͯΔΜͰʜw 2"ڥͷ%#ͷόοΫΞοϓΛJNQPSU͢ΔΈ
2"ڥ͋Δ͍TUBHJOHͱ͔͍͏
2"QA DBQA AppQA MemberQA MemberQA Memberqa.dev.example.com
2"QA DBQA AppQA MemberQA MemberQA Memberqa.dev.example.com%#͕ख़ͯ͘͠Δ
·ͱΊ
·ͱΊw ։ൃڥͷߏஙํ๏؆୯ʹͨ͠΄͏͕͍͍Αw ͍Ζ͍ΖΓํ͋ΔΑw ϝϧΧϦͩͱw ϩʔΧϧʹߏஙͯ͠։ൃw ϩʔΧϧʹߏங͢ΔΈ͍Ζ͍Ζղܾw 2"ڥڞ௨ͩͬͨΓ͢Δw σʔλ2"ڥ͔Β࣋ͬͯདྷͯϋοϐʔ
ʠ։ൃڥʡʹؔ͢Δ͓·͚తͳ
ʠ։ൃڥʡαʔόʔ͚ͩ͡Όͳͯ͘ɻ
ʠ։ൃڥʡw *%&w $PNNBOE-JOF5PPMTw #SPXTFS&YUFOTJPOw ʜ
'BDFCPPLͷ3FBDU%FWFMPQFS5PPM
։ൃͷ࣭Λ্ͤ͞ɺແବΛল͘w ͦ͏͍͏ʠπʔϧʡ܊ͯ͢։ൃڥw ແବΛऔΓআ͖ຊ࣭తͳ։ൃ࡞ۀʹ࠷ूதͰ͖ΔڥΛ࡞Δ
ͦ͏͍͏͜ͱΛɺ୭͕ߟ͑୭͕࢝ΊΔ͔
:PV
PS
8FBSFIJSJOH
5IBOLZPV