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
Sotaro Karasawa
October 03, 2015
Technology
15k
5
Share
PHP Conference 2015 / How to Build Efficient and Integrated Development Environment for The Team
「チーム開発において、効率的な統合的な開発環境をいかに作るか」
Sotaro Karasawa
October 03, 2015
More Decks by Sotaro Karasawa
See All by Sotaro Karasawa
「事業目線」の正体 〜3つのフェーズのCTO経験から見えてきた、EMが持つべき視点 @ EMConf JP 2026
sotarok
8
6.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
AI時代にデータ基盤が持つべきCapabilityを考える + Snowflake Data Superheroやっていき宣言 / Considering the Capabilities Data Platforms Should Have in the AI Era + Declaration of Commitment as a Snowflake Data Superhero
civitaspo
0
130
Azure Speech で音声対応してみよう
kosmosebi
0
160
昔はシンプルだった_AmazonS3
kawaji_scratch
0
330
ARIA Notifyについて
ryokatsuse
1
120
Azure Static Web Apps の自動ビルドがタイムアウトしやすくなった状況に対応した件/global-azure2026
thara0402
0
380
AWS Agent Registry の基礎・概要を理解する/aws-agent-registry-intro
ren8k
3
360
Introduction to Bill One Development Engineer
sansan33
PRO
0
410
クラウドネイティブな開発 ~ 認知負荷に立ち向かうためのコンテナ活用
literalice
0
110
Rapid Start: Faster Internet Connections, with Ruby's Help
kazuho
2
170
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
74k
20年前の「OSS革命」に学ぶ AI時代の生存戦略
samakada
0
360
Contract One Engineering Unit 紹介資料
sansan33
PRO
0
16k
Featured
See All Featured
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
170
The #1 spot is gone: here's how to win anyway
tamaranovitovic
2
1k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
110
Optimizing for Happiness
mojombo
378
71k
What's in a price? How to price your products and services
michaelherold
247
13k
Context Engineering - Making Every Token Count
addyosmani
9
830
Prompt Engineering for Job Search
mfonobong
0
270
Applied NLP in the Age of Generative AI
inesmontani
PRO
4
2.2k
The Limits of Empathy - UXLibs8
cassininazir
1
300
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
320
What does AI have to do with Human Rights?
axbom
PRO
1
2.1k
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
130
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