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でアプリケーションを 本番リリースするまで
Search
Ryo Tomidokoro
October 08, 2017
Technology
7
2k
Dockerでアプリケーションを 本番リリースするまで
とにかく、コンテナを本番にリリースするにはどうしたら良いか。その1点にフォーカスしました。
Ryo Tomidokoro
October 08, 2017
Tweet
Share
More Decks by Ryo Tomidokoro
See All by Ryo Tomidokoro
集中して作業する技術/how_to_work_deeply
hanhan1978
58
38k
PHPでデータベースを作ってみた/create-data-with-php
hanhan1978
10
8.7k
ADRを一年運用してみた/adr_after_a_year
hanhan1978
8
3.3k
B+木入門:PHPで理解する データベースインデックスの仕組み/b-plus-tree-101
hanhan1978
5
4.3k
ADRを一年運用してみた/our_story_about_adr
hanhan1978
5
1.8k
PHPで学ぶ Session の基本と応用 / web-app-session-101-2024
hanhan1978
12
5.3k
レガシー回避のPHP開発術/avoid_php_legacy
hanhan1978
16
12k
Laravel Collectionの計算量を調べてみた2023/laravel_collection_time_complexity_2023
hanhan1978
1
1.3k
PHP で学ぶ Cache の距離の話 / study_cache_with_php
hanhan1978
7
2k
Other Decks in Technology
See All in Technology
「家族アルバム みてね」における運用管理・ オブザーバビリティの全貌 / Overview of Operation Management and Observability in FamilyAlbum
isaoshimizu
4
160
とあるOSSを継続可能にするための取り組みについて / OSS Refactoring Process
bun913
1
210
言葉は感情の近似値である。その感情と言葉の誤差を最小化しよう ~コミュニケーションにおけるアナログ/デジタル変換の課題に立ち向かう~
nktamago
0
240
サプライチェーン攻撃に備える
ryunen344
0
290
DroidKaigi 2024 たすけて!ViewModel
mhidaka
5
960
o1のAPIで実験してみたが 制限きつすぎて辛かった話
pharma_x_tech
0
220
Segment Anything Model 2
tenten0727
3
710
JEP 480: Structured Concurrency
aya_ebata
0
130
Creative UIs with Compose: DroidKaigi 2024
chrishorner
1
600
あなたの知らないiOS開発の世界
recruitengineers
PRO
3
180
プロダクトエンジニアを支えるための開発生産性向上施策
tsukakei
0
150
学術機関におけるID連携とOpenID Connect
fujie
0
280
Featured
See All Featured
Product Roadmaps are Hard
iamctodd
PRO
48
10k
Building Your Own Lightsaber
phodgson
101
6k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
663
120k
Statistics for Hackers
jakevdp
794
220k
Six Lessons from altMBA
skipperchong
26
3.4k
Rebuilding a faster, lazier Slack
samanthasiow
78
8.6k
No one is an island. Learnings from fostering a developers community.
thoeni
18
2.9k
Being A Developer After 40
akosma
84
590k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
43
2k
The Power of CSS Pseudo Elements
geoffreycrofte
71
5.3k
A Philosophy of Restraint
colly
202
16k
GitHub's CSS Performance
jonrohan
1030
450k
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
·ͱΊ
·ͱΊ ϚωʔδυͳڥΛ͏͜ͱͰɺ͔ͳΓ؆୯ɻ ؆୯ͳΞϓϦͳΒɺͳΜ͔͓ࢼ͠Ͱ͖ͦ͏͡Όͳ͍ʁ