Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Dockerでアプリケーションを 本番リリースするまで
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Ryo Tomidokoro
October 08, 2017
Technology
2.3k
7
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Dockerでアプリケーションを 本番リリースするまで
とにかく、コンテナを本番にリリースするにはどうしたら良いか。その1点にフォーカスしました。
Ryo Tomidokoro
October 08, 2017
More Decks by Ryo Tomidokoro
See All by Ryo Tomidokoro
Laravelで学ぶ Webアプリケーションチューニング入門/web_application_tuning_101
hanhan1978
4
2.6k
あるアーキテクチャ決定と その結果/architecture-decision-and-its-result
hanhan1978
2
1.9k
開発者が知っておきたい複雑さの正体/where-the-complexity-comes-from
hanhan1978
8
4k
Spec Driven Development入門/spec_driven_development_for_learners
hanhan1978
2
2k
フロントエンドが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
310
PHPerのための計算量入門/Complexity101 for PHPer
hanhan1978
8
4k
集中して作業する技術/how_to_work_deeply
hanhan1978
69
62k
Other Decks in Technology
See All in Technology
V8のArray.prototype.flatを最大約20倍速くするまでと、巨大OSSへの大規模コミットの道のり
riyaamemiya
0
310
日本語に強いオープンな大規模言語モデル「LLM-jp」
odashi
5
1.2k
QA4AI 2026-Oct 生成AI時代の品質保証
tokuty
1
900
ストレスなくAIと付き合いたい!こんなときどうしてる?
namiki64
4
630
その Valkey 使いこなしていますか?
onk
PRO
5
1.6k
Running Kotlin + Quarkus with Lambda
nealle
1
4k
⾮構造化データを価値に変える AI エージェント基盤とその組織
ivry_presentationmaterials
0
200
夫婦で子育てするための育児標準化
codmoninc
PRO
0
460
AI × アーキテクト 第1・2章|生成AIの課題とアーキテクトの素養
daidaidai
0
190
専門領域のAIをどう評価するか
bengo4com
2
310
サブエージェントと Claude Mods で作る独自 Advisor ツールの話
kenichiodo
2
170
僕のハーネスを紹介します
watany
3
120
Featured
See All Featured
Darren the Foodie - Storyboard
khoart
PRO
4
4k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
How to make the Groovebox
asonas
2
2.5k
The Spectacular Lies of Maps
axbom
PRO
1
1.1k
Design in an AI World
tapps
1
350
Building an army of robots
kneath
307
47k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
540
Utilizing Notion as your number one productivity tool
mfonobong
4
620
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
1k
How STYLIGHT went responsive
nonsquared
100
6.3k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
290
Automating Front-end Workflow
addyosmani
1369
210k
Transcript
DockerͰΞϓϦέʔγϣϯΛ ຊ൪ϦϦʔε͢Δ·Ͱ 1)1$POGFSFODF *OOPWBUPS+BQBO*OD ॴ྄ &OHJOFFS
͓Βͤ εϥΠυSpeakerDeckʹΞοϓ͠·͕͢… ࡱӨࣗ༝ʹ͍ͯͯ͋͠Γ·ͤΜ !IBOIBO QIQDPOQIQDPO@
࣮ ԬͷϖνίϯͰಉ༷ͷηογϣϯΛͨ͠ https://speakerdeck.com/hanhan1978/dockerwoben-fan-deshi-tutemitefen-katutakoto
ྫ͑͜Μͳ༰ 1. ։ൃ࣌ʹԿΛ͖͔͢ʁ 2. CIͷ 3. ຊ൪Ͱdockerಈ͔࣌͢ͷ᠘
ࠓগ͠झΛม͑·͢ɻ
%PDLFSͷຊ൪ීٴ·ͩ·͍ͩ Docker৮ͬͯΈͨΒɺ͜Εྑ͍ͷͩͬͨʂ ͱ͍͑ɺ͍͖ͳΓձࣾʹDockerͷಋೖग़དྷͳ͍ ࠓΊ͓ͯ͜͏…(ٞͱ͔େมͩ͠) ݁Ռͱͯ͠ݟ͕ཷ·Βͳ͍ ͜ͷྲྀΕSubversion -> Git ͷ࣌ʹݟͨ
νϚνϚͨ͠ɺݱஈ֊Ͱແҙຯ
ຊͷςʔϚ
وํͷϋʔτʹՐΛ͚ͭΔ
ͭ·Γ ͜ͷηογϣϯΛػձʹ وํ͕ίϯςφΛຊ൪ʹ ϦϦʔεͨͯͨ͘͠·Βͳ͘ͳΔʂ ίϯςφຊ൪ϦϦʔεͷ࣮Λղআͯ͠Β͏ʂ
͋͞͡Ί·͠ΐ͏ɻ RIP - Vagrant
DockerίϯςφΛຊ൪Ͱ ͏ͷʹඞཁͳ͜ͱ
ඞཁͳࣄ 1. Twelve Factor App 2. Dockerͷجૅࣝ 3. Docker࣮ߦڥʹର͢Δཧղ ൱ʂʂ
ຊʹඞཁͳ͜ͱ 1. ਂ͘ߟ͑ͳ͍ 2. ίϐϖ 3. ΫϨδοτΧʔυ
ͱ͍͑
࠷ݶͷࣝ
࠷ݶͷ̏ͭ 1. ϩʔΧϧͰίϯςφΛ࡞ 2. ϨδετϦʹPUSH 3. ຊ൪ʹϦϦʔε
࠷ݶͷͭͷਤ
දతϚωʔδυɾαʔϏε (,&(PPHMF$POUBJOFS&OHJOF %PDLFS$MPVE4XBSN.PEF #&5"
,VCFSOFUFT౾ࣝ ɾΫόϧωςεͱಡΉ ɾ,4ͱུ͢ ɾ<LPPCFSOBZ`UBDF> ɾ4BJMJOH.BTUFSધͷૢॎऀ
%PDLFS4XBSN౾ࣝ ɾεΥʔϜͱಡΉ ɾུশແ͍ ɾ4XBSN܈Ε
͔͜͜Βຊ൪ڥͷछྨ͝ͱ ʹखॱΛհ͠·͢
(,& ,VCFSOFUFT ฤ ࣄલ४උ GCPͷΞΧϯτ࡞ ίϯςφΫϥελͷ࡞ https://cloud.google.com/container-engine/docs/clusters/operations?hl=ja gcloudίϚϯυͷΠϯετʔϧ https://cloud.google.com/container-engine/docs/before-you-begin?hl=ja kubectlίϚϯυͷΠϯετʔϧ
(,& ,VCFSOFUFT ฤ ϩʔΧϧͰͷίϯςφ࡞ EPDLFSCVJMEUHDSJP\130+&$5@*%^TBNQMFCMPHW EPDLFSSVOUSNQHDSJP\130+&$5@*%^TBNQMFCMPHW ಈ࡞֬ೝ
(,& ,VCFSOFUFT ฤ HDMPVEEPDLFSQVTIHDSJP\130+&$5@*%^TBNQMFCMPHW ϨδετϦʹPUSH
(,& ,VCFSOFUFT ฤ LVCFDUMSVOTBNQMFJNBHFHDSJP\130+&$5@*%^TBNQMFCMPHWQPSU LVCFDUMFYQPTFEFQMPZNFOUTBNQMFUZQF-PBE#BMBODFSQPSU ຊ൪ϦϦʔε ֬ೝ LVCFDUMHFUTFSWJDF
4XBSN.PEFฤ ࣄલ४උ Docker cloudͷΞΧϯτ࡞ https://cloud.docker.com AWSͷΞΧϯτ࡞ https://cloud.docker.com SwarmΫϥελͷ࡞
4XBSN.PEFฤ ϩʔΧϧͰͷίϯςφ࡞ EPDLFSCVJMEUSFHJTUSZHJUMBCDPNIBOIBOCMPHW EPDLFSSVOUSNQSFHJTUSZHJUMBCDPNIBOIBOCMPHW ಈ࡞֬ೝ
4XBSN.PEFฤ EPDLFSQVTISFHJTUSZHJUMBCDPNIBOIBOCMPHW ϨδετϦʹPUSH
4XBSN.PEFฤ EPDLFSTFSWJDFDSFBUFOBNFTBNQMFQVCMJTISFQMJDBT SFHJTUSZHJUMBCDPNIBOIBOCMPHW ຊ൪ϦϦʔε ֬ೝ EPDLFSTFSWJDFMT
)FSPLVฤ ࣄલ४උ herokuίϚϯυͷΠϯετʔϧ herokuͷΞΧϯτ࡞ https://cloud.docker.com
)FSPLVฤ APPΛ࡞ͯ͠ɺPUSH IFSPLVDPOUBJOFSMPHJO IFSPLVDSFBUF IFSPLVDPOUBJOFSQVTIXFC IFSPLVPQFO ಈ࡞֬ೝ ίϯςφ࣮ߦڥͱ͍͏ΑΓɺίϯςφbuild & run
DEMO
·ͱΊ
·ͱΊ ϚωʔδυͳڥΛ͏͜ͱͰɺ͔ͳΓ؆୯ɻ ؆୯ͳΞϓϦͳΒɺͳΜ͔͓ࢼ͠Ͱ͖ͦ͏͡Όͳ͍ʁ