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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Ryo Tomidokoro
March 29, 2017
Programming
3
1.1k
続Dockerを使ったPHPアプリ開発とCIについて
Dockerを使ったPHPアプリ開発と本番運用で困ったこと等
Ryo Tomidokoro
March 29, 2017
Tweet
Share
More Decks by Ryo Tomidokoro
See All by Ryo Tomidokoro
開発者が知っておきたい複雑さの正体/where-the-complexity-comes-from
hanhan1978
8
3.3k
Spec Driven Development入門/spec_driven_development_for_learners
hanhan1978
2
1.5k
フロントエンドがTypeScriptなら、バックエンドはPHPでもいいじゃない/php-is-not-bad
hanhan1978
8
13k
どうすると生き残れないのか/how-not-to-survive
hanhan1978
17
14k
100分で本番デプロイ!Laravelで作るWebアプリケーション作成/100min_web_app_cicd
hanhan1978
1
240
PHPerのための計算量入門/Complexity101 for PHPer
hanhan1978
8
3.4k
集中して作業する技術/how_to_work_deeply
hanhan1978
65
54k
PHPでデータベースを作ってみた/create-data-with-php
hanhan1978
11
11k
ADRを一年運用してみた/adr_after_a_year
hanhan1978
8
4.7k
Other Decks in Programming
See All in Programming
20260127_試行錯誤の結晶を1冊に。著者が解説 先輩データサイエンティストからの指南書 / author's_commentary_ds_instructions_guide
nash_efp
1
990
ぼくの開発環境2026
yuzneri
0
240
今から始めるClaude Code超入門
448jp
8
9.1k
Automatic Grammar Agreementと Markdown Extended Attributes について
kishikawakatsumi
0
200
コントリビューターによるDenoのすゝめ / Deno Recommendations by a Contributor
petamoriken
0
210
AIによる高速開発をどう制御するか? ガードレール設置で開発速度と品質を両立させたチームの事例
tonkotsuboy_com
7
2.4k
CSC307 Lecture 06
javiergs
PRO
0
690
登壇資料を作る時に意識していること #登壇資料_findy
konifar
4
1.7k
責任感のあるCloudWatchアラームを設計しよう
akihisaikeda
3
180
Gemini for developers
meteatamel
0
100
【卒業研究】会話ログ分析によるユーザーごとの関心に応じた話題提案手法
momok47
0
200
AI巻き込み型コードレビューのススメ
nealle
2
1.4k
Featured
See All Featured
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
49
3.3k
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
220
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
170
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
5.8k
The innovator’s Mindset - Leading Through an Era of Exponential Change - McGill University 2025
jdejongh
PRO
1
94
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
1
58
Product Roadmaps are Hard
iamctodd
PRO
55
12k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
How STYLIGHT went responsive
nonsquared
100
6k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
9.9k
Paper Plane
katiecoart
PRO
0
46k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
0
3.4k
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௨ ϑϩϯτΤϯυͷςετͳͷͰεΫγϣ ͕͋ΔͱΔͣ
ࢥͬͨΑΓΠέͯΔײ͕ग़ͨ