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
TerraformとGitHub Actionsで手軽に実装するECSのCI/CD
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Ken Takagi
May 24, 2025
Technology
1
360
TerraformとGitHub Actionsで手軽に実装するECSのCI/CD
Ken Takagi
May 24, 2025
Tweet
Share
More Decks by Ken Takagi
See All by Ken Takagi
コストの「削減」から「最適化」へ 〜SREの考え方をコスト最適化に適用する〜
ken_tkg10
0
200
Other Decks in Technology
See All in Technology
なぜ今、コスト最適化(倹約)が必要なのか? ~AWSでのコスト最適化の進め方「目的編」~
htan
1
110
~Everything as Codeを諦めない~ 後からCDK
mu7889yoon
3
280
10Xにおける品質保証活動の全体像と改善 #no_more_wait_for_test
nihonbuson
PRO
2
210
Agile Leadership Summit Keynote 2026
m_seki
1
510
AzureでのIaC - Bicep? Terraform? それ早く言ってよ会議
torumakabe
1
420
ブロックテーマ、WordPress でウェブサイトをつくるということ / 2026.02.07 Gifu WordPress Meetup
torounit
0
130
広告の効果検証を題材にした因果推論の精度検証について
zozotech
PRO
0
130
Bedrock PolicyでAmazon Bedrock Guardrails利用を強制してみた
yuu551
0
150
CDKで始めるTypeScript開発のススメ
tsukuboshi
1
330
What happened to RubyGems and what can we learn?
mikemcquaid
0
250
OWASP Top 10:2025 リリースと 少しの日本語化にまつわる裏話
okdt
PRO
2
260
顧客との商談議事録をみんなで読んで顧客解像度を上げよう
shibayu36
0
180
Featured
See All Featured
DBのスキルで生き残る技術 - AI時代におけるテーブル設計の勘所
soudai
PRO
62
49k
The Language of Interfaces
destraynor
162
26k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
160
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
72
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.2k
Rails Girls Zürich Keynote
gr2m
96
14k
Balancing Empowerment & Direction
lara
5
880
Into the Great Unknown - MozCon
thekraken
40
2.2k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
26
3.3k
GraphQLの誤解/rethinking-graphql
sonatard
74
11k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Optimizing for Happiness
mojombo
379
71k
Transcript
5FSSBGPSNͱ(JU)VC"DUJPOTͰ खܰʹ࣮͢Δ&$4ͷ$*$% +"846(ಢ ߴ݈
ࣗݾհ • ໊લɿߴ݈ • ॴଐɿओʹ৯Λച͍ͬͯΔECاۀ • ϩʔϧɿSite Reliability Engineer (SRE)
• झຯɿεʔύʔમ౬ɺΩϟϯϓɺϥʔϝϯ
ຊεϥΠυͰऔΓѻ͏ൣғ w ͢͜ͱ w &$4ʹσϓϩΠ͢ΔΞϓϦέʔγϣϯͷ$*$% w ͞ͳ͍͜ͱ w &$4Ϋϥελࣗମ"-#ͳͲΠϯϑϥͷ$*$% w
πʔϧΛ͏ͨΊͷৄࡉͳखॱίʔυͷ࣮༰
&$4ͷ$*$%ࣄྫΛௐ͍ͯ͘
&$4ͷ$*$%ͷ͞·͟·ͳબࢶ w "84$PEFγϦʔζ w $PEF$PNNJU ˞Λͬͯ৽نར༻ͷडΛऴྃʣ w $PEF#VJME w $PEF%FQMPZ
w $PEF1JQFMJOF w (JU)VC"DUJPOT w FDTQSFTTP w IUUQTHJUIVCDPNLBZBDFDTQSFTTP w "84$PQJMPU બࢶ͕ଟ͍ʂ σϑΝΫτͱݴ͑Δͷແͦ͞͏
νʔϜͷεΩϧηοτ ߏஙͷ༰қ͞Λߟྀ
ͨͲΓண͍ͨߏ
ͨͲΓண͍ͨߏ NBJOϒϥϯνͷQVTIΛτϦΨʔʹ %PDLFS fi MFͷϏϧυɺ&$3ͷQVTIɺ FTQSFTTPEFQMPZΛ࣮ߦ ίϯςφΠϝʔδͷλάΛ ίϛοτϋογϡʹ͢Δ͜ͱͰ τϨʔαϏϦςΟΛ֬อ
ͨͲΓண͍ͨߏ 5FSSBGPSNͷൣғ σʔλετΞʹ"84αʔϏεΛ࠾༻ ͢Δ߹
ͨͲΓண͍ͨߏ FDTQSFTTPͷൣғ
FDTQSFTTPͷ͍ํ w ͭͷϑΝΠϧΛ༻ҙ͢Δ w $-*AFDTQSFTTPAίϚϯυͰ&$4αʔϏεɾλεΫʹؔ͢Δૢ࡞ &$4ͷαʔϏεఆٛ &$4ͷλεΫఆٛ FDTQSFTTPͷઃఆ
FDTQSFTTPΛ͏͜ͱͷخ͠͞ w ϥΠϑαΠΫϧ͕ҟͳΔΞϓϦͱΠϯϑϥͷڥք͕໌֬ w සൟʹߋ৽͞ΕΔΞϓϦ w ΞϓϦ΄Ͳසൟʹߋ৽͞Εͳ͍Πϯϑϥ w 5FSSBGPSN4UBUFΛࢀরͯ͠γʔϜϨεʹ࿈ܞՄೳ ecspresso.yaml
- aws-actions/configure-aws-credentials - aws-actions/amazon-ecr-login - docker/setup-buildx-actio - docker/build-push-action - kayac/ecspresso
- shell: ecspresso deploy w ͭͷ"DUJPOT TIFMMΛར༻ (JU)VC"DUJPOTͷ࣮
w 3FTPVSDF w ΫϥυϦιʔεͷఆٛ w 5FSSBGPSN.PEVMF w ෳͷϦιʔεΛ·ͱΊͯఆٛ͢ΔςϯϓϨʔτͷΑ͏ͳͷ w 5FSSBGPSN3FHJTUSZ
w )BTIJ$PSQͷެࣜϢʔβʔίϛϡχςΟ͕࡞ͨ͠.PEVMF͕ެ ։͞Ε͍ͯΔϨδετϦ 5FSSBGPSNͷ࣮
w 3FTPVSDF w ΫϥυϦιʔεͷఆٛ w 5FSSBGPSN.PEVMF w ෳͷϦιʔεΛ·ͱΊͯఆٛ͢ΔςϯϓϨʔτͷΑ͏ͳͷ w 5FSSBGPSN3FHJTUSZ
w )BTIJ$PSQͷެࣜϢʔβʔίϛϡχςΟ͕࡞ͨ͠.PEVMF͕ެ ։͞Ε͍ͯΔϨδετϦ 3FTPVSDFΛԿݸॻ͘ͷେมʜ 5FSSBGPSNͷ࣮
w 3FTPVSDF w ΫϥυϦιʔεͷఆٛ w 5FSSBGPSN.PEVMF w ෳͷϦιʔεΛ·ͱΊͯఆٛ͢ΔςϯϓϨʔτͷΑ͏ͳͷ w 5FSSBGPSN3FHJTUSZ
w )BTIJ$PSQͷެࣜϢʔβʔίϛϡχςΟ͕࡞ͨ͠.PEVMF͕ެ ։͞Ε͍ͯΔϨδετϦ ࣗͰ࡞ͬͯϝϯςφϯε͢Δͷେมʜ 5FSSBGPSNͷ࣮
w 3FTPVSDF w ΫϥυϦιʔεͷఆٛ w 5FSSBGPSN.PEVMF w ෳͷϦιʔεΛ·ͱΊͯఆٛ͢ΔςϯϓϨʔτͷΑ͏ͳͷ w 5FSSBGPSN3FHJTUSZ
w )BTIJ$PSQͷެࣜϢʔβʔίϛϡχςΟ͕࡞ͨ͠.PEVMF͕ެ ։͞Ε͍ͯΔϨδετϦ ؆୯ʹ"84Ϧιʔεͷߏங͕Մೳʂ ͋Γ͕ͨ͘Θ͍ͤͯͨͩ͘ 5FSSBGPSNͷ࣮ ѹతײँͬɾɾɾʂ
w 5FSSBGPSN3FHJTUSZͷ.PEVMFΛར༻ - terraform-aws-modules/ecs/aws - terraform-aws-modules/ecr/aws - terraform-aws-modules/autoscaling/aws - terraform-aws-modules/security-group/aws
- terraform-aws-modules/alb/aws - terraform-aws-modules/acm/aws - terraform-aws-modules/route53/aws 5FSSBGPSNͷ࣮
ͨͲΓண͍ͨߏ ίϛϡχςΟʹΑͬͯϝϯςφϯε͞ΕΔ 5FSSBGPSN.PEVMFͱ(JU)VC"DUJPOTͰ $*$%·ͰؚΊͨ&$4ΞϓϦέʔγϣϯΛ࣮ʂ ίϛϡχςΟʹײँʂ