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
Ken Takagi
May 24, 2025
Technology
1
320
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
160
Other Decks in Technology
See All in Technology
プロダクトエンジニアリングで開発の楽しさを拡張する話
barometrica
0
210
生成AIによるソフトウェア開発の収束地点 - Hack Fes 2025
vaaaaanquish
34
16k
あとはAIに任せて人間は自由に生きる
kentaro
3
350
EKS Pod Identity における推移的な session tags
z63d
1
120
UDDのススメ - 拡張版 -
maguroalternative
1
620
PFEM Online Feature Flag @ newmo
shinyaishitobi
1
140
オブザーバビリティ文化を組織に浸透させるには / install observability culture
mackerelio
0
300
九州の人に知ってもらいたいGISスポット / gis spot in kyushu 2025
sakaik
0
200
AWSの最新サービスでAIエージェント構築に楽しく入門しよう
minorun365
PRO
8
470
GCASアップデート(202506-202508)
techniczna
0
200
Amazon S3 Vectorsは大規模ベクトル検索を低コスト化するサーバーレスなベクトルデータベースだ #jawsugsaga / S3 Vectors As A Serverless Vector Database
quiver
2
990
薬屋のひとりごとにみるトラブルシューティング
tomokusaba
0
390
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
329
21k
4 Signs Your Business is Dying
shpigford
184
22k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
36
2.5k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
30
9.6k
Six Lessons from altMBA
skipperchong
28
4k
Facilitating Awesome Meetings
lara
55
6.5k
Why Our Code Smells
bkeepers
PRO
338
57k
Code Review Best Practice
trishagee
69
19k
Mobile First: as difficult as doing things right
swwweet
223
9.9k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Fireside Chat
paigeccino
39
3.6k
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
4k
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ΞϓϦέʔγϣϯΛ࣮ʂ ίϛϡχςΟʹײँʂ