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
熊でもわかるCI/CD/モダンインフラVol1:用語を覚えよう編
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Shohei Kobayashi
May 16, 2022
Programming
630
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
熊でもわかるCI/CD/モダンインフラVol1:用語を覚えよう編
CI/CDから最近っぽいインフラについて説明した勉強会を開きました。
用語を覚える編です。
Shohei Kobayashi
May 16, 2022
More Decks by Shohei Kobayashi
See All by Shohei Kobayashi
非同期処理実行基盤 Delayed脱出 → Solid Queue完全移行への旅路。
srockstyle
3
3.2k
熊でもわかるFIDO2
srockstyle
0
170
CI/CD/インフラ勉強会Vol4 Amazon ECS編 Part1
srockstyle
0
180
熊でもわかるCI/CD/モダンインフラ Vol3 AWS CDK
srockstyle
0
430
熊でもわかるCI/CDモダンインフラ Github Action編
srockstyle
0
430
Chefとnginxで作るPHPアプリケーションのReliable Blue Green Deployment
srockstyle
6
25k
Other Decks in Programming
See All in Programming
RTSPクライアントを自作してみた話
simotin13
0
510
Oxlintのカスタムルールの現況
syumai
6
1k
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
3
1.1k
コンテキストの使い捨てをやめる — ビジネスルール駆動開発と miko —
ioki
0
140
tsserverとは何だったのか、これからどうなるのか
nowaki28
1
450
Why Laravel apps break—Mastering the fundamentals to keep them maintainable
kentaroutakeda
1
340
JJUG CCC 2026 Spring: JSpecify で実現する Kotlin フレンドリーな Java API 設計
ternbusty
1
140
A2UI という光を覗いてみる
satohjohn
1
100
ADKを使って簡単にAIエージェントを作ってみよう
k1mu21
0
240
AI時代のUIはどこへ行く?その2!
yusukebe
19
6.8k
3Dシーンの圧縮
fadis
1
670
ふつうのFeature Flag実践入門
irof
7
3.6k
Featured
See All Featured
Visualization
eitanlees
152
17k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
380
Making the Leap to Tech Lead
cromwellryan
135
9.9k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
The agentic SEO stack - context over prompts
schlessera
0
800
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
200
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Being A Developer After 40
akosma
91
590k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
220
Building AI with AI
inesmontani
PRO
1
1.1k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
190
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
200
Transcript
༻ޠΛ֮͑Α͏ฤ 3BJMTΞϓϦͷ։ൃఔͰઆ໌͢ΔΑʂ ۽ͰΘ͔Δ$*$%ϞμϯΠϯϑϥ
զ ΤϯδχΞྺɿ͘Β͍ ۀքɿ8FC͔ͬ ݴޠɿ3VCZͱ3BJMT 1)11ZUIPO1FSM͘Β͍ʢΕ͕ͪʣ Πϯϑϥ͖ͬͯͨྺʹΤϯδχΞྺ %/4αʔόͱ͔ϝʔϧαʔό࡞ͬͯ·ͨ͠ ࠷ۙͬͺΒ3BJMT͍ͷϑϦʔϥϯεɻ ͖ͳ%/4αʔόͷϛυϧΣΞɿEKCEOT ͖ͳϝʔϧαʔόͷϛυϧΣΞɿ2NBJM
͖ͳ.Z42-ͷίϚϯυTIPXTMBWFTUBUVT ͖ͳ"84ϓϩμΫτ&MBTUJD.BQ3FEVDF ͖ͳ($1ϓϩμΫτ$MPVESVO ͖ͳ$*$%πʔϧ(JUIVC"DUJPO &$4ᘳʹཧղͨ͠ কདྷͷເηΩϡϦςΟΤϯδχΞɻ
$JSDMF$*͍͍ͧʂʂʂʂ
͍͖ͬͯ
ίί rails new ίʔυ͍ͬͺ͍͔͘ ϩʔΧϧͰʂ ʁ આ໌͢Δͱ͜Ζ ੨͍ͱ͜Ζ͕આ໌͠ͳ͍ͱ͜Ζ
ܧଓతΠϯςάϨʔγϣϯ ΦϨϯδ৭ͷՕॴͷߏཁૉ ܧଓతσϦόϦʔ ΠϯϑϥɾαʔόɾωοτϫʔΫ લͷϖʔδͷΦϨϯδ৭ΛࡉԽ ܧଓతσϓϩΠϝϯτ
ΦϨϯδ৭ͷՕॴͷҙຯ Continuous IntegrationʢܧଓతΠϯςάϨʔγϣϯʣ Continuous DeliveryʢܧଓతσϦόϦʔʣ ใγεςϜΛߏ͢ΔαʔόͳͲͷػثɺιϑτΣΞɺ௨৴ωοτϫʔΫ ܧଓతΠϯςάϨʔγϣϯ ܧଓతσϦόϦʔ ΠϯϑϥɾαʔόɾωοτϫʔΫ ܧଓతσϓϩΠϝϯτ
Continuous DeploymentʢܧଓతσϓϩΠʣ
ϞμϯΠϯϑϥΛ্͢Ͱߟ͑Δ$ͳΜͱ͔ܥ CͳΜͱ͔ܥͷจ຺ΛҰॹʹ͞ͳ͍ͱϞμϯΠϯϑϥΓཱͨͳ͍ ܧଓతΠϯςάϨʔγϣϯ ܧଓతσϦόϦʔ ΠϯϑϥɾαʔόɾωοτϫʔΫ ܧଓతσϓϩΠϝϯτ
ܧଓతΠϯςάϨʔγϣϯ ܧଓతσϦόϦʔ ΠϯϑϥɾαʔόɾωοτϫʔΫ ܧଓతσϓϩΠϝϯτ
ΞδϟΠϧ։ൃʹ͍ͭͯ $*$%$%ͷઆ໌Λ͢Δલʹ ·ͣΒͳ͍ͱ͍͚ͳ͍֓೦ʹ͍ͭͯ
ػೳΛׂ ΞδϟΠϧ։ൃͱ ։ൃ ػೳΛখׂͯ͘͞͠ɺখ͍͞୯ҐͰ։ൃɾςετɾϦϦʔεΛ͍ͯ͘͠ख๏ εΫϥϜ։ൃͱಉٛͰ͋Γ·ͤΜʢҰॹʹઆ໌͞Ε͍͚͢Ͳʣ ςετ ϦϦʔε ։ൃ ςετ ϦϦʔε
։ൃ ςετ ϦϦʔε ػೳ1 ػೳ2 ػೳ3 ։ൃ։࢝
ΞδϟΠϧ։ൃͷϝϦοτͱσϝϦοτ ͜ͷลେࣄ ཁٻมߋʹରԠ͍͢͠ ཁٻͷՃʹରԠ͍͢͠ มԽͷॊೈͳରԠ͕͍͢͠ ߴͳϦϦʔε͕͍͢͠ શମͷεέδϡʔϧ͕ཧͮ͠Β͍ ਐḿ͕ཧͮ͠Β͍ ϝϦοτ σϝϦοτ
ΞδϟΠϧ։ൃͷσϝϦοτΛղܾ͍ͨ͠ ཁٻมߋʹରԠ͍͢͠ ཁٻͷՃʹରԠ͍͢͠ มԽͷॊೈͳରԠ͕͍͢͠ ߴͳϦϦʔε͕͍͢͠ શମͷεέδϡʔϧ͕ཧͮ͠Β͍ ਐḿ͕ཧͮ͠Β͍ ϝϦοτ σϝϦοτ
ΞδϟΠϧ։ൃͷσϝϦοτղܾख๏ ܧଓతYYYYYY
$ͳΜͱ͔ܥϫʔυ ܧଓతΠϯςάϨʔγϣϯ ܧଓతσϦόϦʔ ܧଓతσϓϩΠϝϯτ 1SPEVDUJPOڥ ։ൃऀͷϩʔΧϧ
$ͳΜͱ͔ܥϫʔυ ܧଓతΠϯςάϨʔγϣϯ ܧଓతσϦόϦʔ ܧଓతσϓϩΠϝϯτ 1SPEVDUJPOڥ ։ൃऀͷϩʔΧϧ QSPEVDUJPOʹࢸΔ·ͰΛࣗಈԽ͢Δఔ͕ଟ͍ ҙຯશ෦جຊಉ͡
ྫ͑ ܧଓతΠϯςάϨʔγϣϯ ܧଓతσϦόϦʔ ܧଓతσϓϩΠϝϯτ ҙຯશ෦جຊಉ͡ ڇͷؙম͖ αʔϩΠϯεςʔΩͱλϯγνϡʔ ڇλϯমఆ৯͝൧ൈ͖ 1SPEVDUJPOڥ ։ൃऀͷϩʔΧϧ
ϩʔΧϧ͔Β1SPEVDUJPOʹࢸΔ·ͰʹΔ͜ͱ 1SPEVDUJPOڥ ։ൃऀͷϩʔΧϧ
ܧଓతYYYͷࣔ͢ൣғ 1SPEVDUJPOڥ ։ൃऀͷϩʔΧϧ ୯ମςετ ݁߹ςετ Ϗϧυ σϓϩΠ४උ σϓϩΠ ܧଓతΠϯςάϨʔγϣϯ ܧଓతσϦόϦʔ
ܧଓతσϓϩΠϝϯτ
$*$%Λཧղ্ͨ͠Ͱઆ໌͢Δ 1SPEVDUJPOڥ
ͻͱੲલͷΠϯϑϥͱݺΕΔͷجຊܥ "NB[PO&$ "QQMJDBUJPO-PBE#BMBODFS 3%4.Z42- 71$ "QQMJDBUJPO-PBE#BMBODFS "NB[PO&$ 3%4 71$ ϩʔυόϥϯαʔɻ
ΞΫηεΛෳͷαʔόʹৼΓ͚Δɻ )7.ʢϋʔυΣΞԾϚγϯʣํࣜͰԾԽ͞Εͨ-JOVYΠϯελϯεɻ શԾԽΛࠓਪ͍ͯ͠Δɻ ࠓ४ԾԽͱΦʔόʔϔουͦΜͳมΘΒͳ͍Β͍͠ɻ "84͕ఏڙ͍ͯ͠Δ.Z42-1PTUHSF42-ͷ4BB4ɻ 7JSUVBM1SJWBUF$MPVEɻཧతʹ͞Ε͍ͯΔԾωοτϫʔΫɻ
ׂͱࠓ࣌ͳΠϯϑϥͱݺΕΔͷɿجຊฤ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB 71$ "QQMJDBUJPO-PBE#BMBODFS "NB[PO&$4 3%4"VSPSB 71$ ϩʔυόϥϯαʔɻ
ΞΫηεΛෳͷίϯςφʹৼΓ͚Δɻ %PDLFSίϯςφ࣮ߦڥɻ "84͕ఏڙ͍ͯ͠Δ3%#ͷ4BB4ɻ ޓੑ͕͋Δ͚ͩͰɺ.Z42-1PTUHSF42-ͱશ͘ͷผɻ 7JSUVBM1SJWBUF$MPVEɻཧతʹ͞Ε͍ͯΔԾωοτϫʔΫɻ ·ͣجຊܥ͔Β
ׂͱࠓ࣌ͳΠϯϑϥͱݺΕΔͷɿϑϩϯτ൛ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB 71$ "84"NQMJGZ ϑϩϯτΤϯυͷߏஙʙϗετ·ͰΛ໘ݟͯ͘ΕΔπʔϧͱػೳͷ૯শɻ ػೳͷҰͭʹϑϩϯτΤϯυͷϗεςΟϯάΛߦͬͯ͘ΕΔɻ ϑϩϯτΤϯυͱόοΫΤϯυΛ͠·͢ɻ "84"NQMJGZ
ϑϩϯτΤϯυ όοΫΤϯυ ֎෦͔ΒͷΞΫηε
ׂͱࠓ࣌ͳΠϯϑϥͱݺΕΔͷɿϑϩϯτ൛ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB 71$ "NB[PO$MPVE'SPOU "84ࣗલͷ$%/ɻ ஈʹԠͯ͡"LBNBJͱ͔ʹͳΔ͜ͱ͋Δ $%/ΛڬΜͰ4ͱ͍͏ํ๏Λ͍·͢ɻ "NB[PO$MPVE'SPOU
ϑϩϯτΤϯυ όοΫΤϯυ ֎෦͔ΒͷΞΫηε "NB[PO4 "NB[PO4 ੩తϑΝΠϧΛϗεςΟϯά͢ΔͷʹΘΕΔετʔϨδαʔϏεɻ ٱੑͰམͪͳ͍ͷͰɺΠϨϒϯφΠϯͱ͔ݺΕΔ
ׂͱࠓ࣌ͳΠϯϑϥͱݺΕΔͷɿϑϩϯτ൛ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB 71$ 7FSDFM ϑϩϯτΤϯυͷϗεςΟϯάઐϓϥοτϑΥʔϜɻ 3FBDU7VFOVYUOFYUͱ͔ରԠ͍ͯ͠Δɻ ϑϩϯτΤϯυͷϗεςΟϯάͰ"84ΛΘͳ͍ख͋Γ·͢ɻ ϑϩϯτΤϯυ
όοΫΤϯυ ֎෦͔ΒͷΞΫηε
ׂͱࠓ࣌ͳΠϯϑϥͱݺΕΔͷɿϑϩϯτ͚ͩ൛ 'JSFCBTF3FBMUJNF%BUBCBTF (PPHMFͷ($1͕༻ҙ͍ͯ͠Δ'JSFCBTFʹ͋Δσʔλϕʔεɻ ϑϩϯτΤϯυͷػೳʹΑͬͯ"84ΛΘͳ͍ख͋Γ·͢ɻ ϑϩϯτΤϯυ ֎෦͔ΒͷΞΫηε $MPVE'JSFTUPSF 3FBMUJNF%BUBCBTF 'JSFCBTF$MPVE%UBCBTF ࠓճઆ໌͠·ͤΜ
ׂͱࠓ࣌ͳΠϯϑϥͱݺΕΔͷɿϑϩϯτ͚ͩ൛ FUIFSFVN ϒϩοΫνΣʔϯͷϓϥοτϑΥʔϜͷҰͭɻ εϚʔτίϯτϥΫτͰॲཧΛ͔͚ΔͷͰɺόοΫΤϯυͱͯ͑͠Δɻ εϚʔτίϯτϥΫτΛόοΫΤϯυͱͯ͠࡞ΔΞϓϦΛ%BQQTͱ͍͏ɻ ϒϩοΫνΣʔϯΛόοΫΤϯυͱͯ͠ѻ͏ͱ͜ΜͳߏʹͳͬͨΓ͠·͢ɻ ϑϩϯτΤϯυ ֎෦͔ΒͷΞΫηε ࠓճઆ໌͠·ͤΜ
$*$%ͱΠϯϑϥΛཧղ্ͨ͠Ͱઆ໌͢Δ σϓϩΠ όοΫΤϯυʹݶఆ͢ΔΑ
ιʔείʔυͷద༻ͷྲྀΕ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB ϩʔΧϧ͔Βຊ൪·Ͱͷ͓͞Β͍ɻ "NB[PO$MPVE'SPOU ϑϩϯτΤϯυ όοΫΤϯυ "NB[PO4 ։ൃऀͷϩʔΧϧ
୯ମςετ ݁߹ςετ Ϗϧυ σϓϩΠ४උ σϓϩΠ (JUIVC"DUJPO /FUXPSL $%/ ωοτϫʔΫ ετϨʔδ ϩʔυόϥϯαʔ ίϯςφ 3%#
ιʔείʔυͷద༻ͷྲྀΕ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB ࣮ࡍʹΔ͜ͱ "NB[PO$MPVE'SPOU ϑϩϯτΤϯυ όοΫΤϯυ "NB[PO4 ։ൃऀͷϩʔΧϧ
୯ମςετ ݁߹ςετ Ϗϧυ σϓϩΠ४උ σϓϩΠ CVOEMFJOTUBMM SBJMTECDSFBUF SBJMTECNJHSBUF CVOEMFFYFDSTQFD CVOEMFFYFDCSBLFNBO CVOEMFFYFDSVCPDPQ EPDLFSCVJME EPDLFSUBH EPDLFSQVTI DELEFQMPZ
ιʔείʔυͷద༻ͷྲྀΕ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB ʮܧଓతσϓϩΠϑΣʔζʯ͕ϙΠϯτ "NB[PO$MPVE'SPOU ϑϩϯτΤϯυ όοΫΤϯυ "NB[PO4 ։ൃऀͷϩʔΧϧ
୯ମςετ ݁߹ςετ Ϗϧυ σϓϩΠ४උ σϓϩΠ
σϓϩΠͷจ຺ ඍົʹݴͬͯΔ͜ͱ͕ҧ͏ ։ൃऀͷ͍͏σϓϩΠ "84ͷυΩϡϝϯτͷ͍͏σϓϩΠ खݩͷιʔείʔυΛຊ൪ʹద༻͢Δɻ %PDLFSJNBHFͱͯ͠͞ΕͨͷΛίϯςφͱͯ͠ىಈຊ൪ͷ&$4ʹϦϦʔε͢Δɻ
σϓϩΠͷจ຺ ඍົʹݴͬͯΔ͜ͱ͕ҧ͏ ίϯςφΠϝʔδ͕͋Δલఏͷ σϓϩΠͱ͍͏จ຺ͳͷͰ ͜ͷลΘ͔ΒΜͱࠞཚ͢Δ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB "NB[PO$MPVE'SPOU ϑϩϯτΤϯυ
όοΫΤϯυ "NB[PO4 σϓϩΠ ʁ
$*$%ͱΠϯϑϥͱσϓϩΠͷҙຯΛ౿·্͑ͨͰ %PDLFS*NBHF
%PDLFS*NBHFपΓͷ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB σϓϩΠ४උͷɻ ܧଓతσϦόϦʔʹ͋ͨΓ·͢ɻ "NB[PO$MPVE'SPOU ϑϩϯτΤϯυ όοΫΤϯυ "NB[PO4
։ൃऀͷϩʔΧϧ ୯ମςετ ݁߹ςετ Ϗϧυ σϓϩΠ४උ σϓϩΠ
%PDLFS*NBHFपΓͷ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB Πϝʔδ࡞ΛσϓϩΠ४උͷϑΣʔζͰΓ·͢ɻ "NB[PO$MPVE'SPOU ϑϩϯτΤϯυ όοΫΤϯυ "NB[PO4 ։ൃऀͷϩʔΧϧ
୯ମςετ ݁߹ςετ Ϗϧυ σϓϩΠ४උ σϓϩΠ EPDLFSCVJME EPDLFSUBH EPDLFSQVTI
%PDLFS*NBHFपΓͷ Πϝʔδ࡞ޙίϯςφΛཧ͢Δ3FQPTJUPSZʹQVTI͠·͢ɻ ։ൃऀͷϩʔΧϧ ୯ମςετ ݁߹ςετ Ϗϧυ σϓϩΠ४උ σϓϩΠ EPDLFSCVJME EPDLFSUBH
EPDLFSQVTI 1SPEVDUJPOڥ %PDLFS3FQPTJUPSZ
ͦͯ͠"84ͷσϓϩΠͷจ຺ ඍົʹݴͬͯΔ͜ͱ͕ҧ͏ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB "NB[PO$MPVE'SPOU ϑϩϯτΤϯυ όοΫΤϯυ "NB[PO4 σϓϩΠ
%PDLFS3FQPTJUPSZ QVTI͞ΕͨΠϝʔδΛͬͯ ίϯςφΛ&$4ʹσϓϩΠ͢Δ
"84ͷσϓϩΠͲ͏͢Δͷ͔ ͔͜͜ΒઌผͷճͰΓ·͢ɻ "NB[PO&$4 "QQMJDBUJPO-PBE#BMBODFS 3%4"VSPSB "NB[PO$MPVE'SPOU ϑϩϯτΤϯυ όοΫΤϯυ "NB[PO4 σϓϩΠ
%PDLFS3FQPTJUPSZ
·ͱΊ ܧଓతYYYܧଓతΠϯςάϨʔγϣϯɾσϦόϦʔɾσϓϩΠ͕͋Δ ΞδϟΠϧ։ൃͱεΫϥϜ։ൃผͷ ܧଓతYYYΞδϟΠϧ։ൃͷܽΛຒΊΔͨΊʹ͋Δղܾ๏ Πϯϑϥߏཁૉͱͯ͠"84ϓϩμΫτ͓͑ͯ͜͏ ։ൃऀͷσϓϩΠͱ"84υΩϡϝϯτͷσϓϩΠগ͠χϡΞϯε͕ҧ͏