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
続Dockerを使ったPHPアプリ開発とCIについて
Search
Ryo Tomidokoro
March 29, 2017
Programming
1.1k
3
Share
続Dockerを使ったPHPアプリ開発とCIについて
Dockerを使ったPHPアプリ開発と本番運用で困ったこと等
Ryo Tomidokoro
March 29, 2017
More Decks by Ryo Tomidokoro
See All by Ryo Tomidokoro
あるアーキテクチャ決定と その結果/architecture-decision-and-its-result
hanhan1978
2
770
開発者が知っておきたい複雑さの正体/where-the-complexity-comes-from
hanhan1978
8
3.5k
Spec Driven Development入門/spec_driven_development_for_learners
hanhan1978
2
1.9k
フロントエンドがTypeScriptなら、バックエンドはPHPでもいいじゃない/php-is-not-bad
hanhan1978
8
14k
どうすると生き残れないのか/how-not-to-survive
hanhan1978
17
15k
100分で本番デプロイ!Laravelで作るWebアプリケーション作成/100min_web_app_cicd
hanhan1978
1
270
PHPerのための計算量入門/Complexity101 for PHPer
hanhan1978
8
3.6k
集中して作業する技術/how_to_work_deeply
hanhan1978
65
57k
PHPでデータベースを作ってみた/create-data-with-php
hanhan1978
11
11k
Other Decks in Programming
See All in Programming
Kingdom of the Machine
yui_knk
2
1.4k
AI-DLC Deep Dive
yuukiyo
9
5.6k
空間オーディオの活用
objectiveaudio
0
130
Import assertionsが消えた日~ECMAScriptの仕様はどう決まり、なぜ覆るのか~
bicstone
2
180
AIを導入する前にやるべきこと
negima
2
330
なぜあなたのコードには「コシ」がないのか?〜AI時代に問う、最後まで美味しい設計と戦略〜 #phpconkagawa / phpconkagawa2026
shogogg
0
140
【26新卒研修資料】TDD実装演習
dip_tech
PRO
0
170
Claude CodeでETLジョブ実行テストを自動化してみた
yoshikikasama
0
1.1k
Terraform言語の静的解析 / static analysis of Terraform language
wata727
1
140
継続的な負荷検証を目指して
pyama86
0
300
How We Benchmarked Quarkus: Patterns and anti-patterns
hollycummins
1
180
AgentCore Optimizationを始めよう!
licux
3
200
Featured
See All Featured
Building Better People: How to give real-time feedback that sticks.
wjessup
370
20k
Designing for Performance
lara
611
70k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
140
sira's awesome portfolio website redesign presentation
elsirapls
0
230
Why Our Code Smells
bkeepers
PRO
340
58k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
140
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
130
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
The browser strikes back
jonoalderson
0
1k
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.9k
Accessibility Awareness
sabderemane
1
110
Transcript
ଓ%PDLFSΛͬͨ 1)1ΞϓϦ։ൃͱ$* :PLPIBNB/PSUI !IBOIBO
ΞδΣϯμ %PDLFSͰ1)1ΞϓϦ։ൃ͢Δ࣌ͷߏ %PDLFSͬͨ։ൃͷ1SPT$POT $PEFTIJQ1SPͰ$*ͯ͠Έͨαϯϓϧ
1)1ΞϓϦ։ൃ࣌ͷߏ -BSBWFMͷ߹
ࠓ·Ͱͷ։ൃͷ߹ ϦϙδτϦϧʔτʹΞϓϦέʔγϣϯΛஔ
%PDLFSͰͷ։ൃͷ߹ ϧʔτʹ%PDLFSpMF MBSBWFMΞϓϦҰஈԼ͛ͯஔ
%PDLFSͰͷ։ൃͷ߹ ΞϓϦέʔγϣϯҎ֎ͷ༨ܭͳϑΝΠϧΛ ίϯςφʹ"%%͢Δ৺͕ͳ͍ɻ
QIQGQN͚ͩ͡Όಈ͔ͳ͍ͷͰ
EPDLFSDPNQPTFΛ͏ ࠷ۙͷ%PDLFS'PS.BDͩͱඪ४Ͱ͍ͭͯ͘Δ
͜Μͳத ։ൃڥʹඞཁͳίϯςφΛஔ͢Δ
ϦϙδτϦϧʔτͰ EPDLFSDPNQPTFVQE
ίϯςφ্ཱ͕͕ͪΔ
-BSBWFMಈ͘
%PDLFSͬͨ։ൃͷ1SPT$POT
ྑ͔ͬͨ ݄ฒ ؔ࿈ϛυϧΣΞͷΞοϓσʔτ͕؆୯ 8JO.BDͰಉ͡։ൃڥΛ؆୯ಋೖ ΞϓϦέʔγϣϯͱϛυϧΣΞͷૄ݁߹ ※12 Factor
Appͷߟ͑ʹࣗવͱۙ͘ͳΔ
ޙ֤ࣗͷ։ൃڥͷEPDLFSΛ࠷৽ʹ͠ͱ͚େৎ ͦ͏ࢥͬͯͨ࣌͋ͬͨɾɾɾ
ޙ͔Βରॲ͢Δͱհͳ όον࣮ߦͲ͏͢Δ ηογϣϯͲ͏͢Δ $*໘͍͘͞
όον࣮ߦͲ͏͢Δ
ίϯςφʹDSPOΛࠐΉʁ XFCIPPLΛίϯςφͰىಈͯ͠ɺDSPO ઐ༻ίϯςφ͔ΒIUUQͰ࣮ߦ )PTUͷDSPOΛ͏ LVCFSOFUJTͷDSPOઃఆΛར༻͢Δ
όον࣮ߦͷҝʹ༧Ίߟ͓͖͑ͯ͘͜ͱ ίϯςφઃܭͷҰ෦ͱͯ͠ࣄલʹߟ͓͑ͯ͘ DSPOઐ༻ίϯςφXFCIPPLͷ࡞͕໘ ͚ͩͲҠ২ੑߴ͍ ࣮ߦڥґଘͷํ๏ɺָ͚ͩͲҠ২ੑ͕ ͍ ※։ൃɾεςʔδɾຊ൪Λҙࣝͯ͠ܭը͢ΔඞཁΞϦ
ηογϣϯͲ͏͢Δ
ϑΝΠϧͩͱϦϦʔεͰফ͑Δ☓ ҉߸Խͯ͠$PPLJFʹೖΕΔ☓ 3FEJT͏ͱͯ͠3FEJTίϯςφͩͱϦϦʔεํ๏ʹ Αͬͯফ͑Δ ӬଓԽ͠ͳͯ͘ηογϣϯΛ෮ݩͰ͖ΔΈΛߟ͑ Δ˕
ϚωʔδυɾαʔϏεΛͬͯӬଓԽ͢Δ˚ ※AWSͷRedisͱ͔
ηογϣϯอ࣋ͷҝʹ༧Ίߟ͓͖͑ͯ͘͜ͱ ݁ہͷͱ͜ΖӬଓԽΛͲ͜ʹ࣋ͨͤΔ͔ͷ ίϯςφͷͨΊͷఆੴ͕͖ͬͱͰ͖Δ ئ ઃܭஈ֊Ͱߟ͓͔͑ͯͳ͍ͱ٧Ή࣌͋Δ
$*໘͍͘͞
طଘͷ$*πʔϧ%PDLFSόʔδϣϯͷਵʹ ͕ग़Δͱ͖͕͋Δ طଘͷ$*πʔϧͷ%PDLFSࢧԉҰ෦ͷػೳ͕0'' ΒΕ͍ͯΔ߹͕͋Δ ϏϧυޙͷϦϦʔείϯςφͷ࣮ߦڥґଘ͕ ͋Δ
ΦϯϓϨ+FOLJOT͓͡͞ΜͳΒɾɾɾ
֤$*ͷରԠঢ়گ CI Engine Compose Circle CI 1.09 (beta 1.12) ࣗྗಋೖ
Travis CI 1.12.3 ࣗྗಋೖ Codeship 1.12 ಋೖࡁΈ จ๏v1 Docker-Cloud ?? ଟ࠷৽ ?? ଟ࠷৽ Shippable 1.09 (beta 1.10) ࣗྗಋೖ &OHJOFͷ࠷৽όʔδϣϯ
DPNQPTFͷόʔδϣϯʹ͍ͭͯ Compose Engine จ๏ ~1.6.x 1.09 v1 1.6.x~ 1.10 v2
1.6.x~ 1.12 v2.1 1.9.x~ 1.13 v3 WͰWͷػೳ͕͑ͳ͔ͬͨΓ͢Δ
%PDLFSͷഁյతมߋ w dWͰϏϧυͯ͠ϨδετϦʹQVTI w WdͰQVMMग़དྷͳ͍ɻ http://docs.docker.jp/engine/breaking_changes.html
%PDLFS$*ͷҝʹ༧Ίߟ͓͖͑ͯ͘͜ͱ %PDLFSͷόʔδϣϯมԽΛ͏ $*ϑΝʔετͰઃܭΛߦ͏ ϦϦʔεͱΓ͠·ͰΛ໌֬ʹઃܭ͠ ͓ͯ͘͜ͱ
$PEFTIJQ1SPͰ$*ͯ͠Έͨαϯϓϧ
$PEFTIJQ1SPͷಛ ઃఆϑΝΠϧ͕ͦͷ··EPDLFSDPNQPTF ຖ݄Ϗϧυ·ͰQSJWBUFͰແྉ CVJMEDBDIF͕ͪΌΜͱ͖͘ DPNQPTFͷจ๏͕ಠࣗɻ͔ͭݹ͍ɻ ͱ͍͑ɺDPNQPTFΛωΠςΟϒͰαϙʔτ͍ͯ͠Δͷ
Ͱɺݸਓతʹ͘͢͝ظ͍ͯ͠Δ
-BSBWFMΛ͓͍ͷํ Լهʹαϯϓϧ্͛ͯஔ͖·ͨ͠ɻ https://github.com/hanhan1978/docker-laravel54-skelton
͓·͚ -BSBWFMͷ%VTLΛ࣮ߦ $PEFTIJQͰ$* Τϥʔ͕͋ͬͨΒεΫϦʔϯγϣοτ Λऔͬͯ4MBDL௨ ϑϩϯτΤϯυͷςετͳͷͰεΫγϣ ͕͋ΔͱΔͣ
ࢥͬͨΑΓΠέͯΔײ͕ग़ͨ