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
PHP Conference 2015 / How to Build Efficient an...
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Sotaro Karasawa
October 03, 2015
Technology
5
15k
PHP Conference 2015 / How to Build Efficient and Integrated Development Environment for The Team
「チーム開発において、効率的な統合的な開発環境をいかに作るか」
Sotaro Karasawa
October 03, 2015
Tweet
Share
More Decks by Sotaro Karasawa
See All by Sotaro Karasawa
「事業目線」の正体 〜3つのフェーズのCTO経験から見えてきた、EMが持つべき視点 @ EMConf JP 2026
sotarok
6
1.1k
大「個人開発サービス」時代に僕たちはどう生きるか
sotarok
22
13k
P2B Haus法人サポータープランのご提案
sotarok
2
1.6k
ソフトウェアxスタートアップから見た飲食と配送の世界 / The World of Food Deliverlies and Restaurant Businesses from a Software and Startup Perspective
sotarok
2
1.3k
CTO 3度目の正直 / My 3rd CTO Career
sotarok
21
11k
Introduction to the Corporate Solutions Engineering at MTC2018
sotarok
1
36k
Mercari meetup for Corporate Engineering #1 / What is "Corporate Engineering"?
sotarok
2
2.4k
Markdown and WYSIWYG
sotarok
1
6.4k
20 Jan 2017 / Moving Beyond Borders - Mercari DAY
sotarok
8
16k
Other Decks in Technology
See All in Technology
【SLO】"多様な期待値" と向き合ってみた
z63d
2
300
Security Diaries of an Open Source IAM
ahus1
0
200
Introduction to Sansan Meishi Maker Development Engineer
sansan33
PRO
0
360
Eight Engineering Unit 紹介資料
sansan33
PRO
1
6.9k
Devinを導入したら予想外の人たちに好評だった
tomuro
0
870
「データとの対話」の現在地と未来
kobakou
0
1.3k
大規模サービスにおける レガシーコードからReactへの移行
magicpod
1
120
AIエンジニア Devin と歩む、自律型運用プロセスの構築
a2ito
0
680
Databricksアシスタントが自分で考えて動く時代に! エージェントモード体験もくもく会
taka_aki
0
310
メタデータ同期に潜んでいた問題 〜 Cache Stampede 時の Cycle Wait を⾒つけた話
lycorptech_jp
PRO
0
150
Data Hubグループ 紹介資料
sansan33
PRO
0
2.8k
AI が Approve する開発フロー / How AI Reviewers Accelerate Our Development
zaimy
1
260
Featured
See All Featured
Speed Design
sergeychernyshev
33
1.6k
Lessons Learnt from Crawling 1000+ Websites
charlesmeaden
PRO
1
1.1k
The World Runs on Bad Software
bkeepers
PRO
72
12k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
Testing 201, or: Great Expectations
jmmastey
46
8.1k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
130
The Invisible Side of Design
smashingmag
302
51k
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
84
What’s in a name? Adding method to the madness
productmarketing
PRO
24
4k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
97
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
99
How to Align SEO within the Product Triangle To Get Buy-In & Support - #RIMC
aleyda
1
1.4k
Transcript
)PXUP#VJME &GpDJFOUBOE*OUFHSBUFE %FWFMPQNFOU&OWJSPONFOU GPS5IF5FBN 1)1$POGFSFODF+BQBO !TPUBSPL .FSDBSJ *OD
νʔϜͷͨΊͷ ޮతͰ౷Ұతͳ։ൃڥͷ ࡞Γํ ˞ຊൃදଟຊޠͰ͢ 1)1$POGFSFODF+BQBO !TPUBSPL .FSDBSJ *OD
!TPUBSPL
!TPUBSPL 4PUBSP,BSBTBXB .FSDBSJ *OD
!TPUBSPL
None
.FSDBSJ *OD
.FSDBSJ *OD %-. 64 +1 ग़%BJMZ, ߪೖ.POUIMZ.
+1:
.FSDBSJ *OD $IFDLPVUPVSCMPH IUUQUFDINFSDBSJDPN
2)PXNBOZFOHJOFFSTJOZPVSUFBN ʙਓ ʙਓ ʙਓ ਓʙ
.FSDBSJ *OD w &OHJOFFST w 0DU ਓऑ w 0DUਓऑ w
0DUਓऑ ଟ
%FWFMPQNFOU&OWJSPONFOU ։ൃڥ
ͳͥ ʠ༰қʹߏஙՄೳͳ։ൃڥ Λ༻ҙ͖͢ͳͷ͔
ۀظ ਓਓʙਓͱ͔ ͦΕͧΕ͕ͦΕͧΕదʹ։ൃͯ͠Δɻ ܾ·ͬͯΔͷ͏ݴޠͱ%#ɾ8FCαʔόʔ͘Β͍
ظ ਓਓʙ ͦΕͧΕ͕ͦΕͧΕͷʜY ਓ ϥΠϒϥϦ ݴޠ ϛυϧΣΞ ίϯ ϙωϯτ
ظ ਓਓʙ ͦΕͧΕ͕ͦΕͧΕͷʜ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%FWFMPQNFOU4FSWFS 3FDJQF EFC SQN
-PDBM
PUUP
ϝϧΧϦͷ߹ w 7JSUVBM#PY 7BHSBOU w ֤छϛυϧΣΞΛηοτΞοϓࡁΈͷ#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.com 10.0.1.12 api-sotarok-us.dev.example.com 10.0.1.12 www-sotarok-jp.dev.example.com 10.0.1.12 www-sotarok-us.dev.example.com
10.0.1.12 …
ϋΠϑϯͰ໊લΛ࡞Δ EFWFYBNQMFDPN 10.0.1.12 api-sotarok-jp.dev.example.com 10.0.1.12 api-sotarok-us.dev.example.com 10.0.1.12 www-sotarok-jp.dev.example.com 10.0.1.12 www-sotarok-us.dev.example.com
10.0.1.12 … 8JME$BSE44-
%BUBCBTF4FSWFS
$PNNPO%BUBCBTF4FSWFS DEV DB Dev Server Dev Server Dev Server
։ൃڥͷσʔλΛͰ͖Δ͚ͩຊ൪ʹ͚ۙͮΔ IUUQUFDIMJGFDPPLQBEDPNFOUSZ
ϝϧΧϦͷ߹ w -PDBMʹ։ൃڥΛͬͯΔΜͰʜ w 2"ڥͷ%#ͷόοΫΞοϓΛJNQPSU͢ ΔΈ
2"ڥ ͋Δ͍TUBHJOHͱ͔͍͏
2" QA DB QA App QA Member QA Member QA
Member qa.dev.example.com
2" QA DB QA App QA Member QA Member QA
Member qa.dev.example.com %#͕ख़ͯ͘͠Δ
·ͱΊ
·ͱΊ w ։ൃڥͷߏஙํ๏؆୯ʹͨ͠΄͏͕͍͍Α w ͍Ζ͍ΖΓํ͋ΔΑ w ϝϧΧϦͩͱ w ϩʔΧϧʹߏஙͯ͠։ൃ w
ϩʔΧϧʹߏங͢ΔΈ͍Ζ͍Ζղܾ w 2"ڥڞ௨ͩͬͨΓ͢Δ w σʔλ2"ڥ͔Β࣋ͬͯདྷͯϋοϐʔ
ʠ։ൃڥʡʹؔ͢Δ ͓·͚తͳ
ʠ։ൃڥʡ αʔόʔ͚ͩ͡Όͳͯ͘ɻ
ʠ։ൃڥʡ w *%& w $PNNBOE-JOF5PPMT w #SPXTFS&YUFOTJPO w ʜ
'BDFCPPLͷ3FBDU%FWFMPQFS5PPM
։ൃͷ࣭Λ্ͤ͞ɺແବΛল͘ w ͦ͏͍͏ʠπʔϧʡ܊ͯ͢։ൃڥ w ແବΛऔΓআ͖ຊ࣭తͳ։ൃ࡞ۀʹ࠷ूதͰ͖ ΔڥΛ࡞Δ
ͦ͏͍͏͜ͱΛɺ ୭͕ߟ͑ ୭͕࢝ΊΔ͔
:PV
PS
None
8FBSFIJSJOH
5IBOLZPV