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
コンテナ技術とコンテナオーケストレーション入門
Search
tarosaiba
December 25, 2018
Technology
910
0
Share
コンテナ技術とコンテナオーケストレーション入門
【初心者向けにコンテナ技術を解説します】
1. コンテナとは?
2. コンテナオーケストレーションとは?
3. これからのアプリケーション開発 & デプロイ & 運用 方法
tarosaiba
December 25, 2018
More Decks by tarosaiba
See All by tarosaiba
合格対策 GOOGLE CLOUD CERTIFIED Professional Cloud Architect 編
tarosaiba
2
700
kube-system落としてみました
tarosaiba
8
2.9k
コンテナ技術とコンテナオーケストレーション 入門_改訂版
tarosaiba
0
660
ElasticContainerServicesハンズオン
tarosaiba
0
130
Other Decks in Technology
See All in Technology
プロダクトを触って語って理解する、チーム横断バグバッシュのすすめ / 20260411 Naoki Takahashi
shift_evolve
PRO
1
130
AI前提とはどういうことか
daisuketakeda
0
120
制約を設計する - 非決定性との境界線 / Designing constraints
soudai
PRO
6
2k
会社紹介資料 / Sansan Company Profile
sansan33
PRO
16
410k
建設的な現実逃避のしかた / How to practice constructive escapism
pauli
4
260
"まず試す"ためのDatabricks Apps活用法 / Databricks Apps for Early Experiments and Validation
nttcom
1
170
Claude Teamプランの選定と、できること/できないこと
rfdnxbro
1
990
チームで育てるAI自走環境_20260409
fuktig
0
830
Babylon.js Japan Activities (2026/4)
limes2018
0
180
遊びで始めたNew Relic MCP、気づいたらChatOpsなオブザーバビリティボットができてました/From New Relic MCP to a ChatOps Observability Bot
aeonpeople
1
170
AI時代に新卒採用、はじめました/junior-engineer-never-die
dmnlk
0
150
2026年度新卒技術研修 サイバーエージェントのデータベース 活用事例とパフォーマンス調査入門
cyberagentdevelopers
PRO
1
230
Featured
See All Featured
My Coaching Mixtape
mlcsv
0
92
Exploring the relationship between traditional SERPs and Gen AI search
raygrieselhuber
PRO
2
3.8k
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
118
110k
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
160
Designing for humans not robots
tammielis
254
26k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
0
190
sira's awesome portfolio website redesign presentation
elsirapls
0
210
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
210
Jamie Indigo - Trashchat’s Guide to Black Boxes: Technical SEO Tactics for LLMs
techseoconnect
PRO
0
93
Making the Leap to Tech Lead
cromwellryan
135
9.8k
Are puppies a ranking factor?
jonoalderson
1
3.2k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.4k
Transcript
ίϯςφٕज़ͱ ίϯςφΦʔέετϨʔγϣϯೖ 4IVOUBSP4BJCB ͜Ε͔ΒͷΞϓϦέʔγϣϯσϓϩΠ͕มΘΔ 1
@tarosaiba ˔ 'VUVSF"SDIJUFDU *OD ˔ 5*(ॴଐ ˔ *OGSB.8$*पΓ͖ͬͯ·ͨ͠ ˔ "84($1
˔ *OGSBTUSVDUVSFBT$PEFͷಋೖ͕ಘҙ ʲ໌ͷ։ൃΧϯϑΝϨϯεొஃʳ ਆ&YDFMखॱॻϕʔεͷӡ༻͔Β"OTJCMFͰͷࣗಈԽ IUUQXXXBUNBSLJUDPKQBJUBSUJDMFTOFXT@IUNM 4IVOUBSP4BJCB 2
3 ࢲͷ͍··Ͱ エンプラ⼩売り & AWS エンプラ⾦融 & オンプレ エンプラ⼩売り &
GCP エンプラ⼩売り & AWS
4 ࢲͷ͍··Ͱ エンプラ⼩売り & AWS エンプラ⾦融 & オンプレ エンプラ⼩売り &
GCP エンプラ⼩売り & AWS ຊ൪ڥͰίϯςφ ӡ༻Λܦݧ
ఆಡऀ ˔ ࠷ۙɺʮίϯςφʯΑ͘ฉ͚͘ͲɺԿͦΕʁԿ͕ศརͳͷʁ ˔ ίϯςφ͕ศརͳͷͬͯΔ͚ͲɺͲ͏ͬͯ͑Α͍ͷʁ ˔ ʮ,VCFSOFUFTʯʮ&$4ʯͬͯԿ ˔ ͜Ε͔ΒͷγεςϜߏஙɺΞϓϦσϓϩΠͲ͏มΘ͍ͬͯ͘ͷʁ
5 ࠓجຊ͕Θ͔ͬͯɺେମ ͷ Πϝʔδ͕༙͚ྑ͍Ͱ͢
6 ͜ͷߨٛͷഎܠ
7 ίϯςφɹɹΩςϚε
8
9 ͔ͳΓΓ্͕͍ͬͯΔ ͱࢥ͍·͢
10 Kubernetes is infrastructure for next generation applications, PaaS and
more. –Brendan Burns, Partner Architect, at Microsoft and co-founder of Kubernetes
11 Kubernetes is infrastructure for next generation applications, PaaS and
more. –Brendan Burns, Partner Architect, at Microsoft and co-founder of Kubernetes ࢲݸਓ ΄Μͱʙʹͦ͏ࢥ͏ʂʂ
12 ͳͷͰɺࠓͷ͏ͪʹجຊ͚ͩ ͓͖͑ͯ·͠ΐ͏
ίϯςφͱʁ ίϯςφΦʔέετϨʔγϣϯͱʁ ͜Ε͔ΒͷΞϓϦέʔγϣϯ։ൃσϓϩΠӡ༻ํ๏ 13 $POUFOUT
ίϯςφͱʁ ίϯςφΦʔέετϨʔγϣϯͱʁ ͜Ε͔ΒͷΞϓϦέʔγϣϯ։ൃσϓϩΠӡ༻ํ๏ 14 $POUFOUT ࠓͷϝΠϯ
ίϯςφͱʁ ίϯςφΦʔέετϨʔγϣϯͱʁ ͜Ε͔ΒͷΞϓϦέʔγϣϯ։ൃσϓϩΠӡ༻ํ๏ 15 $POUFOUT
16 ίϯςφͱʁ
8IBUJT$POUBJOFS 17
$POUBJOFSͱ ˔ ࠷ۙɺʮίϯςφʯΑ͘ฉ͚͘ͲɺԿͦΕʁԿ͕ศརͳͷʁ 18 IUUQTEPDTEPDLFSDPNHFUTUBSUFEEPDLFSDPODFQUT
$POUBJOFSͱ ˔ ࠷ۙɺʮίϯςφʯΑ͘ฉ͚͘ͲɺԿͦΕʁԿ͕ศརͳͷʁ 19 IUUQTEPDTEPDLFSDPNHFUTUBSUFEEPDLFSDPODFQUT ίϨͰ͢
$POUBJOFSͱ ˔ ΞϓϦέʔγϣϯɺߏɺٴͼґଘؔ ΛύοέʔδͰ͖Δͷ ˔ ԾԽٕज़ͷҰͭ ˔ ྲྀۀքͷzίϯςφz͔Β༝དྷ
20 Configuration Source code Runtime Engine Dependencie s
%PDLFSͱ ˔ ίϯςφܕͷΞϓϦέʔγϣϯ࣮ߦ ڥͷҰͭ ˔ Φʔϓϯιʔε ˔ ίϯςφͱ͍͑ɺ%PDLFS ͱ͍͏΄Ͳϝδϟʔͳଘࡏ 21
22 Ͱɺͳʹ͕ศརͳͷ
%PDLFSͰ)FMMPXPSE ˔ ͨͩʮ)FMMP8PSMEʯͱग़ ྗ͢Δ͚ͩ ˔ %PDLFSެࣜͷνϡʔτϦ Ξϧʹ͋Γ·͢ IUUQTEPDTEPDLFSDPNHFUTUBSUFEUFTUEPDLFS WFSTJPO
23 # docker run > docker run hello-world # docker run > docker run hello-world Hello from Docker! This message shows that your installation appears to be working correctly.
%PDLFSͰOHJOY 24 # docker run > docker run --name nginx
-d -p 8080:80 nginx:latest ˔ OHJOYΛಈ͔ͯ͠ΈΑ͏
%PDLFSͰUPNDBU 25 # docker run > docker run --name tomcat
-d -p 8080:8080 tomcat:latest ˔ UPNDBUΛಈ͔ͯ͠ΈΑ͏
%PDLFSͰ+FOLJOT 26 # docker run > docker run --name jenkins
-d -p 8080:8080 jenkins:latest ˔ +FOLJOTΛಈ͔ͯ͠ΈΑ͏
͓·͚ %PDLFSͰ)FMMPXPSE ˔ ͨͩʮ)FMMP8PSMEʯͱग़ ྗ͢Δ͚ͩͰͳ͘ɺ͜ Μͳ͜ͱͰ͖·͢ ˔ DPXTBZͱ͍͏πʔϧΛ ͍ͬͯ·͢
27 # docker run > docker run docker/whalesay cowsay Hello.I am Saiba. ___________________ < Hello.I am Saiba. > ------------------- \ \ \ ## . ## ## ## == ## ## ## ## === /""""""""""""""""___/ === ~~~ {~~ ~~~~ ~~~ ~~~~ ~~ ~ / ===- ~~~ \______ o __/ \ \ __/ \____\______/
28 ͳʹ͕͓͖ͨʁ
ɹɹDocker Host Πϝʔδਤ 29 ɹDocker Registry Docker Deamon Containers Images
ɹɹDocker Host Πϝʔδਤ 30 ɹDocker Registry Docker Deamon Containers Images
ɹɹDocker Host Πϝʔδਤ 31 ɹDocker Registry Docker Deamon Containers Images
ొਓɹ%PDLFSJNBHF 32 ˔ ίϯςφΛಈ͔͢ࡍʹɺݩʹͳΔΠ ϝʔδ ˔ ΠϝʔδɺϦϙδτϦ %PDLFS )VC Ͱެ։ɾڞ༗Մೳ
Docker Image
ʲࢀߟʳ%PDLFSIVC 33 ˔ ༷ʑͳιϑτΣΞ͕ɺ%PDLFS JNBHFͱͯ͠ެ։͞Ε͍ͯΔ ˔ %PDLFSެࣜͷϦϙδτϦ ˔ ݸਓͰJNBHFΛΞοϓϩʔυͯ͠ɺ ެ։͢Δ͜ͱՄೳ
IUUQTIVCEPDLFSDPN
ొਓɹ%PDLFS$POUBJOFS 34 ˔ ΠϝʔδΛݩʹ࡞ΒΕΔ࣮ମ ˔ தͰΞϓϦέʔγϣϯ͕Քಇ͍ͯ͠ Δ ˔ ϗετʹෳՔಇՄೳ Docker
Container
35 ԾϚγϯ 7. తͳʁ
36 গ͠ҧ͏ΜͰ͢ɻ
37 Infrastructure Host Operating System Hypervisor Guest OS VM Guest
OS VM ಈ࡞Πϝʔδ Bins/Libs Bins/Libs App A App B Infrastructure Host Operating System Docker Engine Bins/Libs Bins/Libs App A App B ԾϚγϯ ίϯςφ
38 ৄࡉผߨٛͰ Δ͔Θ͔Βͳ͍͚Ͳ
39 )PXUPVTF$POUBJOFS 4UFQ
جຊͷ͍ํ 40 EPDLFSQVMM EPDLFSSVO EPDLFSQT EPDLFSTUPQ
EPDLFSTUBSU EPDLFSSN
41 ˞ࡉ͔͍ίϚϯυͷ͍ํ આ໌͠·ͤΜɻ Πϝʔδ͚͚ͩͭΕ0,Ͱ͢
EPDLFSQVMM 42 ˔ ίϯςφͷΠϝʔδΛμϯϩʔυ ͠·͢ Docker Deamon Containers Images Repogitory
# docker pull > docker pull centos:latest latest: Pulling from library/centos a02a4930cb5d: Downloading [========> [..] pull
EPDLFSSVO 43 # docker run > docker run --name nginx
-d -p 8080:80 nginx:latest ˔ Πϝʔδ͔ΒίϯςφΛ࡞͠·͢ Docker Deamon Containers Images Repogitory run
EPDLFSQT 44 # docker ps > docker ps CONTAINER ID
IMAGE COMMAND CREATED STATUS PORTS NAMES 94641045a2b7 nginx:latest "nginx -g 'daemon off" 9 seconds ago Up 7 seconds 0.0.0.0:8080->80/tcp nginx ˔ ίϯςφͷεςʔλεΛ֬ೝ͠·͢ Docker Deamon Containers Images Repogitory ps
EPDLFSTUPQ 45 ˔ ίϯςφΛఀࢭ͠·͢ Docker Deamon Containers Images Repogitory #
docker stop > docker stop nginx stop
EPDLFSTUBSU 46 ˔ ίϯςφΛىಈ͠·͢ Docker Deamon Containers Images Repogitory #
docker start > docker start nginx star t
EPDLFSSN 47 ˔ ίϯςφΛআ͠·͢ Docker Deamon Containers Images Repogitory #
docker rm > docker rm nginx rm
ίϯςφͷϥΠϑαΠΫϧ 48 Images Repogitory Containers pull stop star t run
remove Dockerfile push build ޙ΄Ͳ ղઆ
49 %&.0
50 ͘͢͝ศརͳͷ͓͔Γ ͍͚ͩͨ·͔ͨ͠ʁ
8IZ $POUBJOFS 51
52 ͍Ζ͍Ζ͋Γ·͕͢ɺ
53 *NNVUBCMFͳΠϯϑϥΛ ఏڙͰ͖Δ͔Β
54
*NNVUBCMFͳΠϯϑϥ ͜Ε·ͰͷΠϯϑϥ *NNVUBCMFͳ Πϯϑϥ αʔό ߏங αʔό ߏங αʔό ߏங
αʔό ϝϯς αʔό ϝϯς αʔό ϝϯς 55
56 ͕͘͜͜͢͝େࣄ ͳͷͰɺΠϝʔδΛ
*NNVUBCMFͳΠϯϑϥ 57 ͜Ε·ͰͷΠϯϑϥ ϖοτ *NNVUBCMFͳΠϯϑϥ Ոச
*NNVUBCMFͳΠϯϑϥ 58 ͜Ε·ͰͷΠϯϑϥ ϖοτ *NNVUBCMFͳΠϯϑϥ Ոச ѱ͘ ݴ͑ɺ͍ࣺͯͰ͢
*NNVUBCMFԿ͕خ͍͠ ˔ αʔόߏมߋͷཤྺཧ͕ෆཁ ˔ ͭ·Γɺαʔόͷઃఆ୭͔উखʹม͑ͨͩΖˠ൜ਓ୳͠ Έ͍ͨͳ͜ͱ͕ͳ͘ͳΔ ˔ ຊ൪ڥͱεςʔδϯάڥͰઃఆࠩҟ͕͋ͬͯɺোൃੜ Έ͍ͨͳ͜ͱͳ͘ͳΔ ˔
˞ίϯςφͰͳͯ͘ɺԾϚγϯͰ࣮ݱՄೳ 59
60 ͱɺେࣄͳΞϓϦ
ίϯςφʹΞϓϦΛೖΕΔ 61 Container Image Bins/Libs App ˔ ͨͱ͑ɺz+BWBͷΞϓϦέʔγϣϯz ˔ ͱɺzඞཁͳ࣮ߦڥzΛίϯςφͰύοέʔδϯά
Build
62 ͜ΕͰಈ͔ͤ·͢
ԾϚγϯͷͱ͖ 63 ԾϚγϯWFS EC2 Amazon Linux Tomcat ɹɹApplication RDS MySQL
_ ίϯςφʹ͢Δͱɺ͜Μͳײ͡ 64 ίϯςφWFS EC2 Amazon Linux Tomcat ɹɹApplication Docker
Engine _ RDS MySQL
_ ίϯςφʹ͢Δͱɺ͜Μͳײ͡ 65 ίϯςφWFS EC2 Amazon Linux Tomcat ɹɹApplication Docker
Engine _ RDS MySQL Container Container
͘ΒͯΈ·͠ΐ͏ 66 ԾϚγϯWFS EC2 Amazon Linux Tomcat ɹɹApplication _ EC2
Amazon Linux Tomcat ɹɹApplication Docker _ ίϯςφWFS
վΊͯɺͳͥ$POUBJOFSͳͷ͔ ˔ *NNVUBCMFͳΠϯϑϥͱΞϓϦΛηοτͰಈ͔ͤΔ ˔ ͲͷڥͰಉ͡Α͏ʹಈ͘ ϙʔλϏϦςΟΛ࣮ݱ ˔ ԾϚγϯͱൺֱͯ͠ ɺܰྔͰ͋ΓΞϓϦσϓϩΠ͕ߴʹߦ͑Δ
˔ ϦιʔεΛޮΑ͑͘Δ ෳͷΞϓϦ͕૬ΓՄೳ 67
68 ྫ͑
69
70 ͜ͷ͖ͱΓऔΓ͞Α͏ͳΒ
˔ ։ൃ༻ͷΠϝʔδΛɻ։ൃऀͦͷ্ͰΞϓϦΛ։ൃ ΈΜͳ͕ಉ͡ڥ Πϯϑϥ Ͱ։ൃ 71 Images Local Local
Development ࡞
˔ ։ൃ༻ͷΠϝʔδΛɻ։ൃऀͦͷ্ͰΞϓϦΛ։ൃ ΈΜͳ͕ಉ͡ڥ Πϯϑϥ Ͱ։ൃ 72 Images Local Local
Development ࡞ SAME IMAGE SAME IMAGE
˔ ։ൃڥˠεςʔδϯάڥˠຊ൪ڥͯ͢ಉ͡Πϝʔδ ҟͳΔڥͷ҆৺σϓϩΠ 73 Images Production Staging Local Development
˔ ։ൃڥˠεςʔδϯάڥˠຊ൪ڥͯ͢ಉ͡Πϝʔδ ҟͳΔڥͷ҆৺σϓϩΠ 74 Images Production Staging Local SAME IMAGE
SAME IMAGE SAME IMAGE Development
ΫϥυҠߦ؆୯ ˔ ΦϯϓϨˠΫϥυɺΫϥυˠผΫϥυͷҠߦ؆୯ ˞,VCFSOFUFTΛར༻͢Δͱศར 75 Other Cloud Other Cloud
Cloud
)PXUPVTF$POUBJOFS 4UFQ 76
77 ίϯςφʹ͍ͭͯ Πϝʔδ͚ͭΕͨͱࢥ͏ͷͰ ͏4UFQਐΊ·͢
78
جຊͷ͍ํ4UFQ 79 %PDLFSGJMF EPDLFSCVJME EPDLFSQVTI
%PDLFSGJMF 80 ˔ %PDLFSJNBHFΛ࡞͢ΔͨΊͷઃ ఆϑΝΠϧ ˔ ΞϓϦ͕ґଘ͢ΔϛυϧΣΞ04 ͷϥΠϒϥϦΛઃఆɺΞϓϦͦͷ ͷΛஔ͢Δ ˔
ࠓ·Ͱͷαʔόߏஙͷखॱɺ͜ͷ ϑΝΠϧʹΘΔ QLHΠϯετʔ ϧɺઃఆϑΝΠϧฤू # ※͋͘·ͰαϯϓϧͰ͢ɻ͜ΕͰಈ͖·ͤΜ※ # ϕʔεͷΠϝʔδΛࢦఆ FROM alpine:3.8 # JavaΛInstall RUN apk add --update openjdk8 # ڥมΛઃఆ ENV JAVA_HOME /usr/lib/jvm/java-1.8-openjdk ENV PATH $PATH:/usr/lib/jvm/java-1.8-openjdk/ jre/bin # my-app.jarΛίϯςφʹίϐʔ COPY ./my-app.jar / # ίϯςφͰmy-app.jarΛ࣮ߦ CMD [“java”, “-jar”, “./my-app.jar”] EXPOSE 80
EPDLFSCVJME 81 ˔ %PDLFSGJMFͷઃఆʹج͍ͮͯɺ %PDLFSJNBHFΛ࡞ Ϗϧυ ͢Δ Docker Deamon Containers
Images Dockerfile # Dockerfile > ls Dockerfile # docker build > docker build ./ -t example build
EPDLFSQVTI 82 ˔ %PDLFSJNBHFΛɺϦϙδτϦʹΞο ϓͯ͠ɺڞ༗ɾެ։Ͱ͖ΔΑ͏ʹ͢ Δ Docker Deamon Containers Images
# docker push > docker push example:latest push Repogitory
ίϯςφͷϥΠϑαΠΫϧ ࠶ܝ 83 Images Repogitory Dockerfile Containers push build
pull stop star t run
ίϯςφͱʁ ίϯςφΦʔέετϨʔγϣϯͱʁ ͜Ε͔ΒͷΞϓϦέʔγϣϯ։ൃσϓϩΠӡ༻ํ๏ 84 $POUFOUT
85 ίϯςφΦʔέετϨʔγϣϯ ͱ
8IBUJT $POUBJOFS0SDIFTUSBUJPO 86
87
88 ίϨͰ͢
ΦʔέετϨʔγϣϯπʔϧͱ ˔ ӡ༻ڥͰίϯςφΛཧͯ͘͠ΕΔπʔϧ ˔ ෳͷίϯςφͷࢹͱ੍ޚΛߦͬͯ͘ΕΔ 89 Images Repogitory Dockerfile Production
ίίͷ෦
͍Ζ͍ΖͳαʔϏε 90
ͳʹΛͯ͘͠ΕΔͷ͔ 91 ˔ ίϯςφؒ֎෦ͱͷ/8੍ޚ ˔ σϓϩΠϩʔϧόοΫ ˔ ࢹ ˔ ࣗಈ෮چ
˔ εέʔϦϯά ˔ FUD Host Servers ௨৴ ௨৴ ࢹ εέʔϦϯά ΦʔέετϨʔγϣϯ πʔϧ
92 ίϯςφ͘͢͝ศར ͚ͩͲɺཧ͢Δͷ͕େม ͔ͩΒඞཁ ϖοτΈ͍ͨʹ ͋·Γݴ͏͜ͱฉ͍ͯ͘Εͳ ͍
ओཁͳαʔϏε 93 &MBTUJD$POUBJOFS4FSWJDF (PPHMF,VCFSOFUFT&OHJOF ※ چࣜΞΠίϯͰࣦྱ͠·͢
&$4 &MBTUJD$POUBJOFS4FSWJDF 94 ˔ "84ͷϚωʔδυαʔϏε ˔ "84ಠࣗͷίϯςφΦʔέετϨʔγϣϯπʔϧ ˔ %PDLFSίϯςφϑΥʔϚοτΛαϙʔτ
&$4ͷ؆୯ͳΈ 95 ECS Cluster EC2 EC2 Service Task Task ɾɾɾ
˔ &$ͰΫϥελΛߏ ˔ 5BTL ίϯςφ Ͱίϯ ςφΠϝʔδΛࢦఆ ˔ 4FSWJDFͰ5BTLΛࢦఆ
(,& (PPHMF,VCFSOFUFT&OHJOF 96 ˔ ($1ͷϚωʔδυαʔϏε ˔ (PPHMF͕։ൃͨ͠ ,VCFSOFUFTΛϚωʔδυͰར༻Մೳ ˔
%PDLFSίϯςφϑΥʔϚοτΛαϙʔτ
(,&ͷ؆୯ͳΈ 97 GKE Cluster GCE Host GCE Host Deployment Pod
Pod ɾɾɾ ˔ ($&ͰΫϥελΛߏ ˔ %FQMPZNFOUͰ ίϯςφΠϝʔδͱՔಇ Λઃఆ ˔ 1PE ίϯςφ
98 େମͲͪΒ ಉ͡Α͏ͳ͜ͱ͕Ͱ͖·͢
99 ͨͩɺ,VCFSOFUFTͷํ͕ྑ͍Ͱ͢ ͲͬͪͬͯΈ͚ͨͲ ,VCFSOFUFTͷ΄͏͕͍͢ ͍ʂ
"84Ͱ,VCFSOFUFT ͨͩɺ·ͩ౦ژདྷͯͳ͍ 100 IUUQTXXXTMJEFTIBSFOFU"NB[PO8FC4FSWJDFTTSWSVOOJOHLVCFSOFUFTXJUIBNB[POFLT
"[VSFͰ,VCFSOFUFT 101
03"$-&Ͱ,VCFSOFUFT 102
"MJCBCBͰ,VCFSOFUFT 103
104 ,VCFSOFUFTͷߨٛ ผ్Γ·͢ ͜ΕΔ
ίϯςφͱʁ ίϯςφΦʔέετϨʔγϣϯͱʁ ͜Ε͔ΒͷΞϓϦέʔγϣϯ։ൃσϓϩΠӡ༻ํ๏ 105 $POUFOUT
106 ͜Ε͔ΒͷΞϓϦέʔγϣ ϯσϓϩΠํ๏
107 ैདྷͷΓํ͔Β ΨϥοͱมΘΔͱࢥ͍·͢
։ൃϑϩʔ͕มΘΔ 108 Production Staging Repogitory App Source Dockerfile Image COMMIT
DEPLOY BUILD / TEST
ΞϓϦͷ࡞Γ͕มΘΔ 109 ˔ ͭͷίϯςφʹɺͭͷϓϩηε ΞϓϦ ͚ͩΛಈ͔͢ ˔ ͭͷίϯςφΠϝʔδͰɺෳڥʹσϓϩΠͰ͖ΔΑ͏ʹ ΞϓϦͷઃఆ
%#ଓઌ ڥมͰͤΔΑ͏ʹ͢Δ ˔ ίϯςφɺεςʔτϨεʹ͢Δ εςʔτΛ࣋ͭใ%#ͳͲͷαʔϏεͰอ࣋
ʲࢀߟʳ'BDUPS 110 IUUQTGBDUPSOFUKB
ׂ͕มΘΔ 111 ͍··Ͱ Production ΞϓϦϝϯό Πϯϑϥϝϯό Ϟδϡʔϧ ϝϯς
ׂ͕มΘΔ 112 ͍··Ͱ ͜Ε͔Β Production ΞϓϦϝϯό Πϯϑϥϝϯό Ϟδϡʔϧ ϝϯς Production
ΞϓϦϝϯό Πϯϑϥϝϯό ίϯςφ Πϝʔδ ϝϯς
ׂ͕มΘΔ 113 ˔ ίϯςφΛ࡞Δ ˔ ίϯςφΛಈ͔͢
ΞϓϦέʔγϣϯ࡞Γ ʹूதͰ͖Δʂ αʔϏεͷ҆ఆӡ༻ ʹूதͰ͖Δʂ
ׂ͕มΘΔ 114 ˔ ίϯςφΛ࡞Δ ˔ ίϯςφΛಈ͔͢
ΞϓϦέʔγϣϯ࡞Γ ʹूதͰ͖Δʂ αʔϏεͷ҆ఆӡ༻ ʹूதͰ͖Δʂ ͪΖΜ࿈ܞඞਢ
ΞϓϦͷਓ͕ओʹ ߟ͑Δ͜ͱ 115 ˔ ΞϓϦέʔγϣϯࣗମ ˔ ίϯςφ༷ʹଇͨ͠ΞϓϦέʔγϣϯઃܭ ˔ FUD
Πϯϑϥͷਓ͕ओʹ ߟ͑Δ͜ͱ 116 ˔ ίϯςφͷϦιʔεͷ੍ݶ ˔ εέʔϦϯάઓུ ίϯςφϊʔυ ˔
ίϯςφͷσϓϩΠϑϩʔͷཱ֬ ˔ ࢹํ๏ ˔ FUD
Πϯϑϥߏ͕มΘΔ &$4WFS 117 RDS ECS tomcat Cluster ECS httpd
Cluster ALB ALB ※ ͋͘·ͰࢀߟͰɺΠϝʔδఔͰ Container (Task)
Πϯϑϥߏ͕มΘΔ (,&WFS 118 Cloud SQL GKE Cluster Cloud Load
Balancing ※ ͋͘·ͰࢀߟͰɺΠϝʔδఔͰ Service (Kubernetes) Container (Pod)
119 ৄࡉ࣍ճͷߨٛͰ
120 গ͠Πϝʔδ ༙͖·ͨ͠Ͱ͠ΐ͏͔
121 ·ͱΊ
ίϯςφͱʁ ίϯςφΦʔέετϨʔγϣϯͱʁ ͜Ε͔ΒͷΞϓϦέʔγϣϯ։ൃσϓϩΠӡ༻ํ๏ 122 $POUFOUT
123 ɹɹɹίϯςφಋೖ ͡Ίߟ͑ํʹ׳ΕΔͷ͕େมͰ͕͢ ϝϦοτઈଟ͍Ͱ͢ɻ͕ΜΓ·͠ΐ͏
124 ิ
͍Ζ͍Ζɺ͕ٙ 125 ˔ ࢹʁϩάʁ ˔ %#αʔόͬͯͲ͏ͳΔͷʁ ˔ ͍··ͰɺDSPOͱ͔Ͱ͍ͬͯͨόονʁ
ࢹʁ 126 ˔ ࢹͷ؍ɺ݁ߏมΘΔͱࢥ͍·͢ɻҎԼͷࢀߟΠϝʔδͰ͢ ˔ ίϯςφͱϗετͦΕͧΕͰࢹ͢Δඞཁ͋Γͳͷ͕ϙΠϯτ Host Container
Container APP APP APP APP ORCHESTRATION ˔ ,VCFSOFUFTͷFWFOUϩά ˔ ΞϓϦͷϩά ˔ ίϯςφຖͷ $16.&.ͷϝτϦΫε ˔ ίϯςφՔಇ ˔ $16.&.ͷϝτϦΫε
ϩάʁ 127 ˔ αʔόʹೖͬͯϩάΛݟΔඞཁ͋Γ·ͤΜɻҎԼͷπʔϧͰͯ͢ ҰݩཧͰ͖·͢ ˔ "84ͳΒ$MPVE8BUDI-PHT ˔ ($1ͳΒ4UBDLESJWFS-PHHJOH ˔
ͦΕ͔ɺGMVFOUE͋Γ
%#αʔόͬͯͲ͏ͳΔͷʁ 128 ˔ %#αʔόجຊɺίϯςφͰཱͯ·ͤΜ ˔ "84ͩͱ3%4ɺ4ɺ&MBTUJD$BDIFɺΛ༻͠·͠ΐ͏
όονδϣϒͬͯͲ͏͢Δͷʁ 129 ˔ όονॲཧ༻ͷίϯςφΛ࡞ͬͯɺόον͕ऴΘͬͨΒআ͢Δܗʹ ͳΓ·͢ ˔ &$4ͳΒɺλεΫεέδϡʔϥ(,&ͳΒɺ$SPO+PC ͕͑·͢
130 ͓ΘΓ