Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
GitHub ActionsでLambdaコンテナをデプロイしてみた - NIFTY Tech...
Search
ニフティ株式会社
PRO
November 02, 2023
Video
Resources
Programming
560
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
GitHub ActionsでLambdaコンテナをデプロイしてみた - NIFTY Tech Talk #15
ニフティ株式会社
PRO
November 02, 2023
Video
Resources
今さら聞けない!GitHub Actions超入門 - NIFTY Tech Talk #15
https://nifty.connpass.com/event/299800/
More Decks by ニフティ株式会社
See All by ニフティ株式会社
microCMS移行をいまならAIでどう進めるか - microCMS Meetup 2026
niftycorp
PRO
0
600
Embedded SREと共に達成した会員管理システムのAWS移行 - SRE NEXT 2026 ランチスポンサーセッション
niftycorp
PRO
1
4.4k
ニフティ株式会社 エンジニア向け Company Deck 2026年版
niftycorp
PRO
0
1.5k
「なぜそう決めたのか」を残し続ける仕組み ― Notion AI カスタムエージェント × Slack連携による設計判断の自動記録 - NIKKEI Tech Talk #47
niftycorp
PRO
0
430
CS教育のDX AIによる育成の効率化
niftycorp
PRO
0
470
AI 開発合宿を通して得た学び
niftycorp
PRO
0
440
なぜISPでオリジナルカードゲームを作ったのか?制作者と対談 - NIFTY Tech Talk #25
niftycorp
PRO
0
140
「なぜかネットが遅い」を“見える化”する 〜マイ ニフティが繋ぐサポートと暮らし〜 - NIKKEI Tech Talk #39
niftycorp
PRO
0
720
InnerSource Summit 2025 Three points that promoted innersource activities
niftycorp
PRO
0
380
Other Decks in Programming
See All in Programming
機械に任せるテスト、人が見るテスト ⽣成AIで引き直した、運⽤保守フェーズの線引き
dske104
0
190
Starting & Sustaining Code-Based E2E Testing for Non-Coding QA Teams( #jasstniigata )
teyamagu
PRO
1
1k
UPDATE をやめる — EF Core でマスタをバージョン管理する
panda728
PRO
0
1.2k
全ての永続トークンを、生まれる前に消し去りたい!
sylph01
2
910
Railsバージョンを4倍にした話
optim
0
370
Agents on Rails - Rails at Scale 2026
irinanazarova
0
560
UnityでSystem.Net.WebSocketsなWebSocketサーバが動かないのでUnity Monoのコードを覗いてみた / about implementing websocket server with unity mono
drumath2237
1
610
なぜCTOを降りてFDEを選んだのか?〜なぜプロダクト企業がFDEで顧客の現場に踏み込むのか〜
gonta
1
210
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
2
1.6k
設計次第でAIコードの読む量は減らせる / designing-for-code-reading
minodriven
35
17k
S3 TablesのIcebergデータに、AIエージェントからアクセスしてみた / 20261016developersio2026joetsu-accessing-iceberg-in-s3tables-via-agent
kasacchiful
PRO
0
150
Apple Intelligence を用いた個人情報誤送信防止、及びユーザーリクエスト体験の改善について
yukiny
0
350
Featured
See All Featured
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
2
730
Amusing Abliteration
ianozsvald
1
350
Heart Work Chapter 1 - Part 1
lfama
PRO
10
37k
From Legacy to Launchpad: Building Startup-Ready Communities
dugsong
0
360
Side Projects
sachag
456
43k
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
330
Statistics for Hackers
jakevdp
799
230k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
68
59k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
23k
Optimising Largest Contentful Paint
csswizardry
37
4k
How to Talk to Developers About Accessibility
jct
2
580
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
Transcript
Copyright © NIFTY Corporation All Rights Reserved. GitHub ActionsͰLambdaίϯςφΛ σϓϩΠͯ͠Έͨ
NIFTY Tech Talk #15 ࠓ͞Βฉ͚ͳ͍ʂGitHub Actionsೖ ଜদɹܒ χϑςΟגࣜձࣾ
Copyright © NIFTY Corporation All Rights Reserved. ࣗݾհ 2 χϑςΟגࣜձࣾ
ձһγεςϜάϧʔϓ ଜদ ܒ ୲ۀ • χϑςΟχϡʔε։ൃӡ༻ झຯ • αοΧʔ؍ઓ(ओʹJϦʔά) ◦ ԣFɾϚϦϊεͷαϙʔλʔ
Copyright © NIFTY Corporation All Rights Reserved. χϑςΟχϡʔε 3 PC
εϚϗ ΞϓϦ (iOS, Android)
Copyright © NIFTY Corporation All Rights Reserved. σϓϩΠ͢Δͷ 4 •
ࣗࣾCMSͰఆظग़ྗ͍ͯ͠ΔαΠτϚοϓ࡞ ◦ αΠτϚοϓݕࡧΤϯδϯ(GoogleͳͲ)ʹWebϖʔδΛ͑ΔϑΝΠϧ • ࣗࣾCMS٫͢ΔγεςϜ৽ͷҰͰαΠτϚοϓੜ͢ΔόονΛҠߦ • EventBridge + Lambda + S3ͷߏͰ࣮ • LambdaΧελϜϥϯλΠϜ(Go)Λར༻ͯ͠ɺίϯςφΠϝʔδͰσϓϩΠ ◦ ͜ͷ෦ΛࣗಈσϓϩΠͰ͖ΔΑ͏ʹͨ͠
Copyright © NIFTY Corporation All Rights Reserved. GitHub ActionsΛબΜͩཧ༝ 5
• ϞϊϨϙతͳϦϙδτϦͳͷͰɺCodeγϦʔζͰͷߏஙෳࡶʹͳΔ • কདྷతʹ։ൃঢ়گʹԠ͖ͨ͡Ίࡉ͔͍ϏϧυΛఏڙ͍ͨ͠ • GitHub Actionsͷํ͕ཧ͍͢͠ • GitHub ActionsͰͷσϓϩΠΛߏஙͨ͜͠ͱ͕ͳ͔ͬͨ
Copyright © NIFTY Corporation All Rights Reserved. σϓϩΠͷྲྀΕ 6 1.
masterdevelopʹpushͳͲͷΠϕϯτͰൃՐ ◦ pushworkflow_dispatchΠϕϯτΛར༻ 2. DockerΠϝʔδͷϏϧυ 3. ECR(Elastic Container Registry)ͷDockerΠϝʔδͷϓογϡ 4. Lambdaͷؔߋ৽ 2~4࠶ར༻ՄೳͳϫʔΫϑϩʔ(2ͱ3ɾ4ʹׂ)ʹ Γग़ͯ͠ɺಉ͡ॲཧΛෳͷϫʔΫϑϩʔͰ ఆٛ͠ͳ͍͍ͯ͘Α͏ʹͨ͠
Copyright © NIFTY Corporation All Rights Reserved. ࠶ར༻ՄೳͳϫʔΫϑϩʔ 7 •
job୯ҐͰϫʔΫϑϩʔΛ͍ճ͢͜ͱ͕Մೳ ◦ ͍ΘΏΔɺaction(actions/checkoutͳͲ)step୯Ґͷ͍ճ͠ ◦ Ұ࿈ͷॲཧΛڞ௨Խ͢Δ͜ͱ͕Ͱ͖Δ • usesͰݺͼग़͢͜ͱ͕Մೳ
Copyright © NIFTY Corporation All Rights Reserved. DockerΠϝʔδͷϏϧυ 8 •
ιʔείʔυͷऔಘ • DockerΠϝʔδͷΫϩείϯύΠϧڥઃఆ • DockerΠϝʔδͷϏϧυ
Copyright © NIFTY Corporation All Rights Reserved. ECRͷϓογϡ 9 •
OIDCͰͷAWSೝূ • AWSೝূΛར༻ͨ͠docker login • DockerΠϝʔδͷλά͚ • ECRͷDockerΠϝʔδͷϓογϡ
Copyright © NIFTY Corporation All Rights Reserved. Lambdaͷߋ৽ 10 •
OIDCͰͷAWSೝূ • Lambdaͷؔߋ৽
Copyright © NIFTY Corporation All Rights Reserved. ۤ࿑ͨ͠ 11 ࠶ར༻ՄೳͳϫʔΫϑϩʔಠಛͷ੍ݶ
• ݺͼग़͠ݩͷenvมΛ࠶ར༻ՄೳͳϫʔΫϑϩʔʹͤͳ͍ • jobͷதͰɺoutputʹग़ྗ͔ͯ͠Βɺ࠶ར༻ՄೳͳϫʔΫϑϩʔʹ͢Α͏ʹͨ͠
Copyright © NIFTY Corporation All Rights Reserved. ۤ࿑ͨ͠ 12 Docker
BuildxʹΑΔϚϧνΞʔΩςΫνϟϏϧυ͕͍ • GItHub Actionsͷ࣮ߦڥamd64(x86_64) • arm64ͷLambdaΛར༻ͨͨ͠Ίɺarm64ʹΫϩεϏϧυ • amd64Ͱ50sͷϏϧυ͕300s͔͔ͬͯऴΘΒͳ͍ • QEMUͰΫϩεϏϧυ͢Δ߹ʹΦʔόʔϔου͕ൃੜ͢Δ͜ͱ͕ط
Copyright © NIFTY Corporation All Rights Reserved. ۤ࿑ͨ͠ 13 ରॲࡦ
• ͦͷ··ؤுΔ • arm64ΛఘΊͯɺamd64ͰLambdaΛಈ͔͢ • ηϧϑϗετϥϯφʔΛར༻͢Δ • M1ϥϯφʔ(macos)Λར༻͢Δ • GitHub ActionsΛఘΊͯɺCodeγϦʔζΛར༻͢Δ
Copyright © NIFTY Corporation All Rights Reserved. ۤ࿑ͨ͠ 14 ରॲࡦ
• ͦͷ··ؤுΔ • arm64ΛఘΊͯɺamd64ͰLambdaΛಈ͔͢ • ηϧϑϗετϥϯφʔΛར༻͢Δ • M1ϥϯφʔ(macos)Λར༻͢Δ • GitHub ActionsΛఘΊͯɺCodeγϦʔζΛར༻͢Δ ྲྀੴʹݫ͍͠
Copyright © NIFTY Corporation All Rights Reserved. ۤ࿑ͨ͠ 15 ରॲࡦ
• ͦͷ··ؤுΔ • arm64ΛఘΊͯɺamd64ͰLambdaΛಈ͔͢ • ηϧϑϗετϥϯφʔΛར༻͢Δ • M1ϥϯφʔ(macos)Λར༻͢Δ • GitHub ActionsΛఘΊͯɺCodeγϦʔζΛར༻͢Δ ྲྀੴʹݫ͍͠ ؆୯ʹఘΊͨ͘ͳ͍
Copyright © NIFTY Corporation All Rights Reserved. ۤ࿑ͨ͠ 16 ରॲࡦ
• ͦͷ··ؤுΔ • arm64ΛఘΊͯɺamd64ͰLambdaΛಈ͔͢ • ηϧϑϗετϥϯφʔΛར༻͢Δ • M1ϥϯφʔ(macos)Λར༻͢Δ • GitHub ActionsΛఘΊͯɺCodeγϦʔζΛར༻͢Δ ྲྀੴʹݫ͍͠ ؆୯ʹఘΊͨ͘ͳ͍ ཧίετ͕ݫ͍͠
Copyright © NIFTY Corporation All Rights Reserved. ۤ࿑ͨ͠ 17 ରॲࡦ
• ͦͷ··ؤுΔ • arm64ΛఘΊͯɺamd64ͰLambdaΛಈ͔͢ • ηϧϑϗετϥϯφʔΛར༻͢Δ • M1ϥϯφʔ(macos)Λར༻͢Δ • GitHub ActionsΛఘΊͯɺCodeγϦʔζΛར༻͢Δ ྲྀੴʹݫ͍͠ ཧίετ͕ݫ͍͠ ௨ৗͷ20ഒίετ͕͔͔Δ ؆୯ʹఘΊͨ͘ͳ͍
Copyright © NIFTY Corporation All Rights Reserved. ۤ࿑ͨ͠ 18 ରॲࡦ
• ͦͷ··ؤுΔ • arm64ΛఘΊͯɺamd64ͰLambdaΛಈ͔͢ • ηϧϑϗετϥϯφʔΛར༻͢Δ • M1ϥϯφʔ(macos)Λར༻͢Δ • GitHub ActionsΛఘΊͯɺCodeγϦʔζΛར༻͢Δ ྲྀੴʹݫ͍͠ ཧίετ͕ݫ͍͠ ௨ৗͷ20ഒίετ͕͔͔Δ ఘΊͨ͘ͳ͍ ؆୯ʹఘΊͨ͘ͳ͍
Copyright © NIFTY Corporation All Rights Reserved. ۤ࿑ͨ͠ 19 dockerͷυΩϡϝϯτʹTips͕͋ͬͨ
• ίʔυΛϏϧυ͢Δ෦ͰΫϩεϏϧυ͢Δ • ΫϩείϯύΠϧͰ͖ΔݴޠͰ͋Εɺར༻Մ ೳͳճආࡦ • GoͷίϯύΠϧΛamd64ڥͰarm64ʹΫϩ είϯύΠϧ • ωΠςΟϒڥͷϏϧυͱ΄΅ಉ͡Ϗϧυ࣌ؒ ͰϏϧυ͕࣮ݱͰ͖ͨ https://docs.docker.com/build/guide/multi-platform/#build-using-cross-compilation
Copyright © NIFTY Corporation All Rights Reserved. ͨ͠ 20 ࠶ར༻ՄೳͳϫʔΫϑϩʔͷ࠾༻
• ൚༻ੑΛߴΊͨͷͰɺຊ൪ɾ։ൃͰಉ͡ϫʔΫϑϩʔϑΝΠϧͰ݁ • ಉ͡ߏͷόονΛ૿ͨ࣌͠ʹɺ࠶ར༻ՄೳͳϫʔΫϑϩʔΛݺͿ͚ͩͰɺࣗಈσ ϓϩΠΛߏஙͰ͖Δ
Copyright © NIFTY Corporation All Rights Reserved. ·ͱΊ 21 GitHub
ActionsͰLambdaίϯςφΛࣗಈσϓϩΠͰ͖ΔΑ͏ʹͨ͠ • GitHub ActionsͰؾܰʹࣗಈσϓϩΠΛߏஙͰ͖Δ • ࠶ར༻ՄೳͳϫʔΫϑϩʔศར • GitHub ActionsͰDockerͷϚϧνΞʔΩςΫνϟϏϧυʹҙ
Copyright © NIFTY Corporation All Rights Reserved.