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
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Ryo Tomidokoro
March 29, 2017
Programming
1.1k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
続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
1.3k
開発者が知っておきたい複雑さの正体/where-the-complexity-comes-from
hanhan1978
8
3.6k
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
280
PHPerのための計算量入門/Complexity101 for PHPer
hanhan1978
8
3.7k
集中して作業する技術/how_to_work_deeply
hanhan1978
65
58k
PHPでデータベースを作ってみた/create-data-with-php
hanhan1978
11
11k
Other Decks in Programming
See All in Programming
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.6k
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
410
Java × distroless で 軽量なコンテナイメージを / Java on Distroless
contour_gara
0
550
軽量Java基盤の設計 DIコンテナに頼らない、長期保守と1秒起動の実現 JJUG CCC 2026 Spring
macha64
0
540
RTSPクライアントを自作してみた話
simotin13
0
610
Vue × Nuxt × Oxc どこまで使える?実運用の現在地
andpad
0
270
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
290
Claspは野良GASの夢をみるか
takter00
0
200
Oxlintのカスタムルールの現況
syumai
6
1.1k
過去最大のMCPアップデート! 2026-07-28 RC版の謎に迫る
licux
6
360
[2026年度第1回ORセミナー] 計画最適化ベンチャーと競技プログラミング人材
terryu16
0
270
Lemonade + Foundry Toolkit でお手軽アプリ開発
seosoft
1
360
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Code Review Best Practice
trishagee
74
20k
Art, The Web, and Tiny UX
lynnandtonic
304
22k
Writing Fast Ruby
sferik
630
63k
Amusing Abliteration
ianozsvald
1
210
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
0
320
How To Stay Up To Date on Web Technology
chriscoyier
790
250k
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Evolving SEO for Evolving Search Engines
ryanjones
0
220
Automating Front-end Workflow
addyosmani
1370
210k
Designing for Timeless Needs
cassininazir
1
260
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௨ ϑϩϯτΤϯυͷςετͳͷͰεΫγϣ ͕͋ΔͱΔͣ
ࢥͬͨΑΓΠέͯΔײ͕ग़ͨ